Music reproducing system for collaboration, program reproducer, music data distributor and program producer

ABSTRACT

A music reproducing system includes a musical instrument for reproducing a music tune on the basis of the MIDI music data, a sound reproducer for reproducing a music tune and/or narration from audio data codes and a server computer for distributing programs, MIDI files and audio files to the musical instrument and sound reproducer, and a program contains plural music tunes and narration; while a program is being reproduced in collaboration between the musical instrument and the sound reproducer, the audio data codes are converted to an audio signal expressing the narration through the sound reproducer, and the music tunes are reproduced on the basis of the MIDI files through the musical instrument; and the duration data codes of audio file are supplied to the musical instrument so as to make the musical instrument and the sound reproducer synchronized with each other.

FIELD OF THE INVENTION

This invention relates to a music reproducing system and, moreparticularly, to a music reproducing system for producing a program incollaboration between sound reproducing apparatus reproducing tones onthe basis of different sorts of music data codes, a program reproducerincorporated in the program reproducer, a music data distributor fordistributing music data to the program reproducer and a programproducer.

DESCRIPTION OF THE RELATED ART

Various sorts of sound reproducing system have been proposed for musicfans. A compact disc player is an example of the sound reproducingsystem. A set of audio data codes, which expresses the discrete valueson the waveform of an analog audio signal, is stored in a compact disc.While the compact disc is rotating in the compact disc player, the audiodata codes are sequentially read out from the compact disc, and areconverted back to the analog audio signal. The analog audio signal istransferred to a sound system, and the tones are reproduced from theanalog audio signal along the music tune.

An automatic player musical instrument such as, for example, anautomatic player piano is another sort of the sound reproducing system.The automatic player piano is a combination of an acoustic piano and anautomatic playing system, and the automatic playing system includes aninformation processing system and solenoid-operated key actuatorsrespectively assigned to the keys of acoustic piano. A set of music datacodes, which expresses the note numbers assigned to the keys to bedepressed and released, the key velocity or the loudness of the tonesand the time intervals between the depressed/released keys and so forth,is supplied to the information processing system. The event in which akey is depressed is referred to as a “note-on key event”, and the eventin which a key is released is referred to as a “note-off key event”, andterm “key event” is used for both of the note-on key event and note-offkey event. The music data codes are sequentially processed in theinformation processing system, and the keys to be depressed, keys to bereleased and the velocity to be imparted to the keys are determined onthe basis of the music data codes. When the time comes, thesolenoid-operated key actuators associated with the depressed keys areenergized with driving signals, and the driving signals are removed fromthe solenoid-operated key actuators associated with the released keys.Thus, the keys of acoustic piano are sequentially driven to produce thetones along the music tune.

Since the audio data codes and music data codes express the discretevalues on the waveform of analog audio signal and the key events,respectively, the audio data codes and music data codes are notcompatible with one another. In other words, the automatic playingsystem can not drive the keys of acoustic piano on the basis of theaudio data codes, and the compact disc player does not produce the tonesfrom the music data codes along the music tune. In this situation, it isdifficult to reproduce a music tune in collaboration between the compactdisc player and the automatic player piano.

A prior art synchronization technique between the compact disc playerand the automatic player piano is proposed in Japan Patent Applicationlaid-open No. 2003-271138. The prior art synchronization technique makesthe compact disc player synchronized with the automatic player piano byusing time management data codes expressing the time at which the analogaudio signal exceeds a threshold. The time management data codes arecontained in the set of music data codes, and the prior artsynchronization system monitors the audio signal to see whether or notthe audio signal exceeds the threshold at the time specified by the timemanagement data codes. If a time lag takes place, the prior artsynchronization system changes the time at which the key event takesplace.

However, the part assigned to the compact disc player is not reproducedthrough the automatic player piano, and the part assigned to theautomatic player piano is not reproduced by means of the compact discplayer. In other words, it is difficult to make the compact disc playerand automatic player piano collaborate with one another in reproductionof a program.

SUMMARY OF THE INVENTION

It is therefore an important object of the present invention to providea music reproducing system, which makes it possible to reproduce aprogram through plural playback apparatus in collaboration with oneanother.

It is another important object of the present invention to provide aprogram reproducer, which is incorporated in the music reproducingsystem.

It is yet another important object of the present invention to provide amusic data distributor, which also form a part of the music reproducingsystem.

It is still another important object of the present invention to providea program producer, which is added to the music reproducing system.

It is yet another important object of the present invention to providean information storage medium, in which a computer program is stored forthe program producer.

In accordance with one aspect of the present invention, there isprovided a music reproducing system for reproducing a music program,comprising: a communication network; a music data distributor includinga first data storage for storing the music program containing at leastone musical content and at least one non-musical content, a data filecontaining pieces of audio data and pieces of a sort of time dataexpressing a time from a first viewpoint and another data filecontaining pieces of music data and pieces of another sort of time dataexpressing a time from a second view point different from the firstviewpoint, a first communication module connected to the communicationnetwork for receiving requests and delivering the music program, thedata file and the aforesaid another data file to the communicationnetwork, and a first information processing apparatus connected to thefirst data storage and the first communication module and having aninformation processing capability so as to manage the first datastorage, interpret the requests and transfer the music program, the datafile and the aforesaid another data file between the first data storageand the first communication module; and a program reproducer connectedto the communication network, and including a first data-to-soundconverter following the music program for reproducing the non-musicalcontent from the pieces of audio data on a schedule defined by thepieces of the sort of time data, a second data-to-sound converterfollowing the music program for reproducing the musical content on thebasis of the pieces of music data on another schedule defined by thepieces of the aforesaid another sort of time data, a second data storagestoring the music program, the data file and the aforesaid another datafile, a second communication module connected to the communicationnetwork, a second information processing apparatus connected to thefirst data-to-sound converter, the second data-to-sound converter, thesecond data storage and the second communication module and having aninformation processing capability so as to manage the second datastorage, transmit the requests, receive at least the music program, makethe first data-to-sound reproducer and the second data-to-soundreproducer synchronized on the basis of the pieces of the sort of timedata and the pieces of the aforesaid another sort of time data andinterpret the music program for selectively transferring the pieces ofaudio data and the pieces of music data to the first data-to-soundconverter and the second data-to-sound converter.

In accordance with another aspect of the present invention, there isprovided a program reproducer for reproducing a music program containinga musical content and a non-musical content, comprising: a firstdata-to-sound converter following the music program for reproducing thenon-musical content from pieces of audio data stored in a data file on aschedule defined by pieces of a sort of time data stored in the datafile and expressing a time from a first viewpoint; a seconddata-to-sound converter following the music program for reproducing themusical content on the basis of pieces of music data stored in anotherdata file on another schedule defined by pieces of the aforesaid anothersort of time data stored in the aforesaid another data file andexpressing a time from a second viewpoint different from the firstviewpoint; a data storage storing the music program, the data file andthe aforesaid another data file; a communication module connected to acommunication network so as to receive at least the music program from amusic data distributor; and an information processing apparatusconnected to the first data-to-sound converter, the second data-to-soundconverter, the data storage and the communication module and having aninformation processing capability so as to manage the data storage,receive the music program, make the first data-to-sound converter andthe second data-to-sound converter synchronized on the basis of thepieces of the sort of time data and the pieces of the aforesaid anothersort of time data and interpret said music program for selectivelytransferring said pieces of audio data and said pieces of music data tosaid first data-to-sound converter and said second data-to-soundconverter.

In accordance with yet another aspect of the present invention, there isprovided a music data distributor connected to a communication network,comprising: a data storage for storing a music program containing atleast one musical content and at least one non-musical content, a datafile containing pieces of audio data expressing the aforesaid at leastone non-musical content and pieces of a sort of time data expressing atime from a first viewpoint and another data file containing pieces ofmusic data expressing the aforesaid at least one musical content andpieces of another sort of time data expressing a time from a second viewpoint different from the first viewpoint; a communication moduleconnected to the communication network for receiving requests of userand delivering the music program, the data file and the aforesaidanother data file to the communication network; and an informationprocessing apparatus connected to the data storage and the communicationmodule, and having an information processing capability so as to managethe data storage, interpret the requests user and transfer at least oneof the music program, the data file and the aforesaid another data filebetween the data storage and the communication module in response to therequest of user for transmitting the aforesaid at least one of theprogram, sand data file and the aforesaid another data file to the user.

In accordance with still another aspect of the present invention, thereis provided a program producer for producing a music program containingat least one musical content and at least one non-musical content,comprising: a first data storage for storing an audio data list whereplural non-musical contents are found; a second data storage for storinga music data list where plural musical contents are found; an editorselecting the aforesaid at least one musical content and the aforesaidat least one non-musical content from the music data list and the audiolist; a scheduler determining a playback schedule on which the aforesaidat least one non-musical content and the aforesaid at least one musicalcontent are to be reproduced; and a program manager labeling the musicprogram with a program identifier and put the program identifier on aprogram management table together with other program identifier of othermusic programs.

In accordance with yet another aspect of the present invention, there isprovided an information storage medium storing a computer program, andthe computer program expresses a method of preparing a music programcomprising the steps of: a) designating at least one musical contentexpressed by pieces of music data and at least one non-musical contentexpressing pieces of audio data; b) arranging the aforesaid at least onemusical content and the aforesaid at least one non-musical content inthe order of playback so as to determine a music program; c) determininga playback schedule where at least a start time is defined for each ofthe contents of the music program; d) forming a composite audio filewherein the pieces of audio data expressing the non-musical content areput together with other pieces of audio data expressing anothernon-musical content replaceable with the pieces of music data expressingthe musical content; e) labeling the music program with a programidentifier; and f) registering the program identifier together with afile identifier in a program management table.

BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of music reproducing system, programreproducer, music data distributor, program producer and informationstorage medium will be more clearly understood from the followingdescription taken in conjunction with the accompanying drawings, inwhich

FIG. 1 is a block diagram showing the system configuration of a musicreproducing system of the present invention,

FIG. 2A is a block diagram showing the circuit configuration of a musicdata distribution server computer incorporated in the music reproducingsystem,

FIG. 2B is a schematic cross sectional side view showing the structureof an automatic player musical instrument incorporated in the musicreproducing system,

FIG. 3 a view showing an audio file and MIDI files to be reproduced in aprogram,

FIG. 4 is a view showing the data structure of a MIDI file,

FIG. 5 is a view showing contents of a program management table,

FIG. 6 is a view showing the contents of a program,

FIG. 7 is a block diagram showing the system configurations of electricand electronic systems incorporated in the automatic player musicalinstrument,

FIG. 8 is a block diagram showing the system configuration of a soundreproducer incorporated in the music reproducing system,

FIG. 9 is a block diagram showing a communication sequence between thesound reproducer and the music data distribution server computer,

FIG. 10 is a view showing a picture produced on a display of the soundreproducer for download,

FIG. 11 is a view showing a picture produced on the display panel forplayback,

FIG. 12 is a block diagram showing a communication sequence among thesound reproducer, automatic player musical instrument and music datadistribution server computer,

FIG. 13 is a view showing a picture produced on the display panel inorder to ask for permission of playback,

FIG. 14 is a flowchart showing a job sequence for the controller ofautomatic player musical instrument,

FIG. 15 is a block diagram showing the system configuration of amodification of the music reproducing system of the present invention,

FIG. 16 is a block diagram showing the system configuration of anothermodification of the music reproducing system of the present invention,

FIG. 17 is a block diagram showing the system configuration of anothermusic reproducing system of the present invention,

FIG. 18 is a block diagram showing the circuit configuration of a musicdata distribution server computer incorporated in the music reproducingsystem,

FIG. 19 a view showing an audio file and MIDI files to be reproduced ina program,

FIG. 20 is a view showing the data structure of a MIDI file,

FIG. 21 is a view showing contents of a program management table,

FIG. 22 is a view showing the contents of a program,

FIG. 23 is a block diagram showing the system configuration of a soundreproducer incorporated in the music reproducing system,

FIG. 24 is a block diagram showing the system configurations of electricand electronic systems incorporated in an automatic player musicalinstrument of the music reproducing system,

FIG. 25 is a block diagram showing a communication sequence between thesound reproducer and the music data distribution server computer,

FIG. 26 is a view showing a picture produced on a display of the soundreproducer for download,

FIG. 27 is a view showing a picture produced on the display panel forplayback,

FIG. 28 is a block diagram showing a communication sequence among thesound reproducer, automatic player musical instrument and music datadistribution server computer for reproducing a program,

FIG. 29 is a view showing a picture produced on the display panel inorder to ask for permission of playback,

FIG. 30 is a flowchart showing a job sequence for the controller ofautomatic player musical instrument,

FIG. 31 is a block diagram showing the system configuration of amodification of the music reproducing system of the present invention,

FIG. 32 is a block diagram showing the system configuration of yetanother music reproducing system of the present invention,

FIG. 33 is a block diagram showing the circuit configuration of a musicdata distribution server computer incorporated in the music reproducingsystem,

FIG. 34 is a block diagram showing contents of a composite audio fileand relation between the composite audio file and MIDI files,

FIG. 35 is a view showing the data structure of a MIDI file,

FIG. 36 is a view showing contents of a program management table,

FIG. 37 is a view showing the contents of a program,

FIG. 38 is a block diagram showing the system configuration of a soundreproducer incorporated in the music reproducing system,

FIG. 39 is a block diagram showing the system configurations of electricand electronic systems incorporated in an automatic player musicalinstrument of the music reproducing system,

FIG. 40 is a block diagram showing a communication sequence between thesound reproducer and music data distribution server computer forpreparation of a new program,

FIG. 41 is a view showing a picture for editorial work produced on adisplay panel,

FIG. 42 is a view showing a playback schedule for a program,

FIG. 43 is a block diagram showing the order of the contents of programto be reproduced and MIDI files to be inserted into narration,

FIG. 44 is a block diagram showing a communication sequence between thesound reproducer and the music data distribution server computer fordownloading a program and associated files,

FIG. 45 is a view showing a picture produced on a display of the soundreproducer for downloading the program and associated files,

FIG. 46 is a block diagram showing a communication sequence among thesound reproducer, automatic player musical instrument and music datadistribution server computer for reproducing a program,

FIG. 47 is a view showing a picture produced on the display panel forplayback,

FIG. 48 is a view showing a picture produced on the display panel inorder to ask for permission of playback,

FIG. 49 is a flowchart showing a job sequence for the controller ofautomatic player musical instrument, and

FIG. 50 is a block diagram showing the system configuration of amodification of the music reproducing system of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

A music reproducing system embodying the present invention aims atreproducing a music program, which contains at least one musical contentand at least one non-musical content.

Pieces of audio data express the at least one non-musical content suchas, for example, narration on a music tune, and are stored in a datafile together with pieces of a sort of time data. The pieces of the sortof time data express a time from a first viewpoint such as, for example,measurement of the lapse of time from the initiation of reproduction,and define a schedule for the reproduction of non-musical content. Onthe other hand, pieces of music data express at least one musicalcontent such as, for example, the music tune, and are stored in anotherdata file together with pieces of another sort of time data. The piecesof another sort of time data express a time from a second viewpoint suchas, for example, a time interval between a production/decay of a toneand the next production/decay of a tone, and defines a schedule for thereproduction of the musical content.

It is possible to express the music tune by other pieces of audio data.However, the reproduction on the basis of the pieces of music data giveslisteners good impression closer to the live performance than thereproduction on the basis of the pieces of audio data.

The music performance system comprises a communication network, a musicdata distributor and a program reproducer, and the music datadistributor and program reproducer are connected to the communicationnetwork. Although other program reproducers are further connected to thecommunication network, the other program reproducers are ignored for thesake of simplicity.

The music data distributor includes a first data storage, a firstcommunication module and a first information processing apparatus. Thefirst information processing apparatus is connected to the first datastorage and first communication module so as to manage the first datastorage and the communication through the first communication module.

The music program, data file and the aforesaid another data file arestored in the first data storage. The first communication module isconnected to the communication network so as to receive requests ofusers and deliver the music program, the data file and the aforesaidanother data file to the communication network. The first informationprocessing apparatus has an information processing capability so asfurther to interpret the requests and transfer the music program, thedata file and the aforesaid another data file between the data storageand the first communication module.

The program reproducer includes a first data-to-sound converter, asecond data-to-sound converter, a second data storage, a secondcommunication module and a second information processing apparatus. Thesecond information processing apparatus is connected to the firstdata-to-sound converter, second data-to-sound converter, second datastorage and second communication module so as to manage the second datastorage, communication through the second communication module andconversion from the data to sound through the first data-to-soundconverter and second data-to-sound converter.

The pieces of audio data are converted to sound for the non-musicalcontent by means of the first data-to-sound converter, and the pieces ofmusic data are converted to sound or tones for the musical content bymeans of the second data-to-sound converter. The second informationprocessing apparatus makes the conversion of first data-to-soundconverter synchronized the conversion of second data-to-sound converteron the basis of the pieces of the sort of time data and the pieces ofthe aforesaid another sort of time data so that the first data-to-soundconverter and second data-to-sound converter follow the music program.

The music program, data file and the aforesaid another data file arestored in the second data storage for reproduction of the music program.The second communication module is connected to the communicationnetwork. The second communication module transmits the requests of usersto the music data distributor through the communication network, andreceives the music program, data file and aforesaid another data filefrom the music data distributor through the communication module. Thetransmission and reception are controlled by the second informationprocessing apparatus as described hereinbefore.

The second information processing apparatus has an informationprocessing capability so as further to interpret the music program so asselectively to transfer the pieces of audio data and the pieces of musicdata to the first data-to-sound converter and the second data-to-soundconverter in accordance with the schedules for the reproduction ofnon-musical content and musical content.

As will be appreciated from the foregoing description, although thepieces of audio data and pieces of music data are reproduced through thedifferent data-to-sound converters, the second information processingapparatus makes both of the first and second data-to-sound convertersfollow the music program in synchronism between the conversion to soundfor the non-musical content and the conversion to sound for the musicalcontent, and the listeners feels the reproduction of music programnatural. Moreover, the listeners feel the music tune close to the liveperformance by virtue of the pieces of music data.

The music reproducing system may further comprise a program producer.Users can produce their new music programs by means of the musicproducer.

The program producer comprises a first data storage, a second datastorage, an editor, a scheduler and a program manager. The first datastorage stores an audio data list, and plural non-musical contents arefound in the audio data file. The second data storage stores a musicdata list, and plural musical contents are found in the music data list.The editor selects at least one musical content from the music data listand at least one non-musical content from the audio list. The aforesaidat least one musical content and aforesaid at least one non-musicalcontent form parts of a music program. The scheduler determines aplayback schedule on which the aforesaid at least one non-musicalcontent and aforesaid at least one musical content are to be reproduced.The program manager labels the music program with a program identifier,and puts the program identifier on a program management table togetherwith other program identifier of other music programs. When the programidentifier is registered in the program management table, the user andother authorized users can download the music program from the musicdata distributor. If the data file and/or another data file in the musicprogram are required for the playback, the user transmits the requestfor transmitting the data file and/or another data file to the musicreproducer for reproducing the music program.

The behavior of program producer may be expressed as a method expressedby a computer program. The method may comprise the steps of: a)designating at least one musical content expressed by pieces of musicdata and at least one non-musical content expressing pieces of audiodata; b) arranging the aforesaid at least one musical content and theaforesaid at least one non-musical content in the order of playback soas to determine a music program; c) determining a playback schedulewhere at least a start time is defined for each of the contents of themusic program; d) forming a composite audio file wherein the pieces ofaudio data expressing the non-musical content are put together withother pieces of audio data expressing another non-musical contentreplaceable with the pieces of music data expressing the musicalcontent; e) labeling the music program with a program identifier; and f)registering the program identifier together with a file identifier in aprogram management table.

First Embodiment

Referring first to FIG. 1 of the drawings, a music reproducing system100 embodying the present invention largely comprises a sound reproducer10, an automatic player musical instrument 20, a music data distributionserver computer 30 and a communication network 40. The sound reproducer10, automatic player musical instrument 20 and music data distributionserver computer 30 are connected to the communication network 40 througha wire communication channel or a radio communication channel 40 a/40 b,and communicate with one another through the communication network 40.The sound reproducer 10 is further connected to the automatic playermusical instrument 20 through a wire communication channel or a radiocommunication channel 40 c so that the sound reproducer 10 and automaticplayer musical instrument 20 are directly communicable with one anotherthrough the wire communication channel/radio communication channel 40 c.

Although the single sound reproducer 10 and single automatic playermusical instrument 20 are illustrated in FIG. 1, other sound reproducer10 and other automatic player musical instruments 20 may be furtherincorporated in the music reproducing system 100.

The sound reproducer 10 is, by way of example, implemented by a personalcomputer system, and an audio playback computer program is installed inthe personal computer system so as to convert pieces of audio data oraudio data codes to tones and/or sound. The audio data codes expressdiscrete values on the waveform of an audio signal representative of thetones and/or sound.

The automatic player musical instrument 20 is a combination of anacoustic piano, an automatic playing system and an electronic toneproducer, and the automatic playing system performs a music tune on theacoustic piano without any fingering of a human player. A set of musicdata codes expresses the music tune, and the formats of music data codesare defined in the MIDI (Musical Instrument Digital Interface)protocols.

A set of music data codes includes key event data codes, effect datacodes and duration data codes. Pieces of music data stored in the keyevent data code express a note-on event or a note-off event, a notenumber indicative of the pitch of tone to be produced or decayed and akey velocity indicative of the loudness of the tone. The note-on keyevent and note-off key event are simply referred to as “key events”. Inother words, term “key event” means any one of the note-on key event andnote-off key event. Pieces of effect data are stored in the effect datacodes, and artificial expressions are imparted to the tones on the basisof the pieces of effect data. A piece of duration data is stored in eachof the duration data codes, and expresses a lapse of time between a keyevent and the next key event. Term “A time” and term “duration” aresynonyms of the term “lapse of time”. Thus, the music data codes are asort of music data different from the audio data codes.

The music data distribution server computer 30 is put on the WWW (WorldWide Web) together with the sound reproducer 10 and automatic playermusical instrument 20. Thus, the music data distribution server computer30, sound reproducer 10 and automatic player musical instrument 20 forma client-server system through the communication network 40.

A set of music data codes and a set of audio data codes form a MIDI fileand an audio file, respectively, and plural MIDI files and plural audiofiles are stored in the music data distribution server computer 30. TheMIDI files are assigned addresses expressed in accordance with the URL(Uniform Resource Locator). These addresses are hereinafter referred toas “URL addresses”. Although the service provider can specify the MIDIfiles in the data storage 14 by using only the MIDI files names, the URLaddresses are useful in case where plural server computers bear the MIDIfiles.

The communication network 40 includes various sorts of networks such asthe internet, telephone networks and so forth. The MIDI files, programsand audio files are distributed from the music data distribution servercomputer 30 to the sound reproducer 10 and automatic player musicalinstrument 20 through the communication network 40.

The programs are prepared for reproduction through the sound reproducer10 and automatic player musical instrument 20 in collaboration with oneanother. At least one music tune is contained in the program togetherwith narration and/or talk. When a user wishes to reproduce a program,the user gives the instruction to reproduce the music tune together withthe narration and/or talk, and the MIDI file, which expresses the musictune, is downloaded to the automatic player musical instrument in theabsence of the MIDI file in the automatic player musical instrument 20.When the sound reproducer 10 and automatic player musical instrument 20get ready to reproduce the music tune and narration and/or talk, theuser instructs the sound reproducer 10 and automatic player musicalinstrument 20 to reproduce the music tune and narration and/or talk.

The sound reproducer 10 starts to produce an audio signal from the audiodata codes expressing the narration/talk and music tune, and theautomatic player musical instrument 20 starts to measure the lapse oftime by means of an internal clock. The audio signal and duration datacodes are supplied from the sound reproducer 10 to the automatic playermusical instrument 20. While the audio signal is expressing thenarration and/or talk, the audio signal is converted to electric voicethrough a built-in sound system of the automatic player musicalinstrument. When the time to reproduce the music tune comes, theautomatic player musical instrument 20 starts to playback the music tuneon the basis of the music data codes, and blocks the built-in soundsystem from the audio signal. The automatic player musical instrumentperforms the music tune. The time interval between the key events ismeasured with reference to the internal clock so that the key event datacodes are processed in synchronism with the conversion from the audiodata codes to the audio signal. When the playback of music tune isterminated, the built-in sound system produces the electric voice forthe next narration and/or talk. Thus, the sound reproducer 10 andautomatic player musical instrument collaborate with one another forreproducing the music tune and narration/talk.

The music data distribution server computer 30 is hereinafter describedwith reference to FIG. 2A. The automatic player musical instrument 20will be described with reference to FIG. 2A, and the sound producer 10will be described in detail after the description on the automaticplayer musical instrument 20.

Music Data Distribution Server Computer

FIG. 2A illustrates the circuit configuration of the data distributionserver computer 30. The data distribution server computer 30 includes acontroller 31, a communication module 32 and a data storage 33, and thecontroller 31, communication module 32 and data storage 33 are connectedto one another through an internal bus system 34.

Though not shown in the drawings, the controller 31 includes a centralprocessing unit, peripheral processors, a program memory and a workingmemory, and a computer program 33 c runs on the controller 31 so as toachieve various tasks such as a data management, analysis of requests ofclients, a file transmission and so forth. The communication module 32is connected to the communication network 40. The client requests arereceived at the communication module 32, and programs, audio files andMIDI files are transmitted from the communication module 32 to the soundreproducer 10 and automatic player musical instrument 20. The datastorage 33 is, by way of example, implemented by a hard disk unit orhard disk units, and the storage space in the hard disk or disks areassigned to a program management table 33 a, programs 33 b, a computerprogram 33 c, audio files 33 d and MIDI files 33 e.

A job sequence is expressed by the computer program for distributing theaudio files 33 d and MIDI files 33 e to clients, and pieces of visualimage data are further stored in the memory subspace assigned to thecomputer program. Various pictures to be produced in client's displaypanels are expressed by the pieces of visual image data. Fileidentifiers for the audio files are correlated with programs in theprogram management table 33 a, and the MIDI files and URL addresses arecorrelated with the program identifiers in the program 33 b.

FIG. 3 shows the data structure of an audio file and MIDI files to bereproduced in a program. The audio file contains the audio data codesand duration data codes. The duration data codes express a lapse of timefrom the first audio data code at the head of the audio file. On theother hand, discrete values are sampled from the waveform of an analogaudio signal at 44.1 kilo-hertz, and are stored in the audio data codes.

The series of audio data codes in the audio file expresses pluralcontents such as, for example, narration and tunes. The tune 1 isexplained in the narration 1, the tunes 2 and 3 are explained in thenarration 2, and the tune 3 is explained in the narration 3. While theprogram is being reproduced, the audio data codes for the narration 1are firstly converted to voice, the audio data codes for the tune 1 areconverted to tones, subsequently, the audio data codes for the narration2 are converted to voice, and is followed by the conversion of audiodata codes for the tones of tunes 2 and 3, thereafter, the audio datacodes for the narration 3 are converted to voice, and, finally, theaudio data codes for the tune 4 are converted to tones. The narration 1,2 and 3 and tunes 1, 2, 3 and 4 form a program.

Plural MIDI files are correlated with the audio file. Tones arereproduced on the basis of the music data codes in the MIDI file 1instead of the playback of the tune 1 recorded in the audio file, thetones are reproduced on the basis of the music data codes in the MIDIfiles 2 and 3 in synchronism with the playback of the tunes 2 and 3, andthe tones are reproduced on the basis of the music data codes in theMIDI file 4 in synchronism with the playback of the tune 4. While theprogram is being reproduced in collaboration between the soundreproducer 10 and automatic player musical instrument 20, the narration1, 2 and 3 is reproduced from the audio signal produced in the soundreproducer 10, and the music tunes 1 to 4 are reproduced through theautomatic player musical instrument 20A on the basis of the music datacodes. Thus, the program is reproduced in collaboration between thesound reproducer 10 and the automatic player musical instrument 20. Aswill be hereinlater described in detail, the conversion of audio data iswell synchronized with the data processing on the music data codes, andthe electric tones for the music tunes 1, 2, 3 and 4 are muted in theplayback through the automatic player musical instrument 20.

The narration may be replaced with dialogue, talk, silence or naturalsound such as, for example the sound of waves.

Turning to FIG. 4, a MIDI file is called as an “SMF (Standard MIDIFile)”, and is broken down into a header chunk HC and a track chunk TC.Pieces of attribute data are stored in the header chunk for the MIDIfile, and the event data codes and duration data codes are stored in thetrack chunk TC. Although the duration data codes of audio file express alapse of time from the audio data code at the head of audio file, eachof the duration data codes of MIDI file expresses a lapse of timebetween a key event and the next key event.

FIG. 5 illustrates the contents of the file identifier together with theprogram management table 33 a. The file identifier is broken down intoan audio file name, a file size and a creation date. The audio file isidentified with the audio file name. The file size expresses the numberof bytes occupied by the audio file, and the creation date is indicativeof the year, month and day at which the audio file is created. Forexample, an audio file is labeled with the audio file name“piano-fan.wab”. 41.5 mega-bytes are required for the audio file namedas “piano-fan.wab”, and the audio file is created in Jan. 25, 2006. Theaudio file named as “piano-fan.wab” is correlated with the programlabeled with the program identifier “CID 001”.

When a program is revised, the revised date is written as the creationdate. One of the file size and creation date may be omitted from thefile identifier. The file identifiers shown in FIG. 5 do not set anylimit to the technical scope of the present invention. Any format isavailable for the file identifier in so far as the audio file isdesignable with the file identifier. For example, numerals may be simplyassigned to the audio files.

The controller searches the program management table 33 a for the audiofile by using the fine identifier as a key, and determines the programidentifier correlated with the file identifier.

FIG. 6 illustrates the contents of the program labeled with the programidentifier “CID 001”. The program identifier “CID 001” is correlatedwith a playback schedule, URL addresses of MIDI files and MIDI filenames in the program. Start time at which the playback starts andtermination time at which the playback is completed are written in theplayback schedule for each of the MIDI files. For example, the playbackof a tune in the MIDI file “piano-fan001.mid” starts at 1 min. and 16sec, and the playback is completed at 5 min. and 48 sec, and the MIDIfile is stored at the memory location assigned the URL address“http://www.abc.Co.jp/CID001/piano-fan001.mid”.

Automatic Player Musical Instrument

Turning back to FIG. 2B of the drawing, the automatic player musicalinstrument 20 largely comprises an acoustic piano 20 a, a codegenerating system 20 b, an automatic playing system 20 c, communicationmodules 20 d and an electronic tone producer 26. While a human player isplaying a music tune on the acoustic piano 20 a, the music data codes,which express the tones in accordance with the MIDI protocols, i.e.,MIDI data codes, are produced by means of the code generating system 20b. On the other hand, the automatic playing system 20 c is responsive toMIDI data codes so as to perform a music tune on the acoustic piano 20 awithout any fingering of the human player. The electronic tone producer26 is also responsive to the music data codes and an audio signalsupplied from the outside thereof so as to produce electric tones alongthe music passage expressed by the music data codes and electric voiceexpressed by the audio signal.

The acoustic piano 20 a includes a keyboard 20 e, i.e., an array ofblack keys 20 f and white keys 20 h, action units 20 j, hammers 20 k,strings 20 m, dampers 20 n, a pedal mechanism 20 p and a piano cabinet20 q. The keyboard 20 a is mounted on a key bed, which forms a bottompart of the piano cabinet 20 q, and the black keys 20 f and white keys20 h are linked with the action units 20 j at the intermediate portionsthereof and dampers 20 n at the rear portions thereof. The action units20 j are further linked with the hammers 20 k, and the hammers 20 k areopposed to the strings 20 m. The dampers 20 n are spaced from andbrought into contact with the strings 20 m depending upon the keypositions on loci of keys 20 f/20 h. The pedal mechanism 20 p is linkedwith the keyboard 20 e and dampers 20 n, and the human player andautomatic playing system 20 c directly change the keyboard 20 e anddampers 20 n for artificial expressions.

While all of the black and white keys 20 f/20 h are staying at restpositions, the hammers 20 k are spaced from the strings 20 m, and thedampers 20 n are held in contact with the strings 20 m as shown in FIG.2B.

When the human player depresses one of the black and white keys 20 f/20h, the depressed key 20 f/20 h starts to travel on the locus. While thedepressed key 20 f/20 h is traveling on the locus, the depressed key 20f/20 h causes the dampers 20 n to be spaced from the strings 20 m, andactuates the associated action unit 20 j. The actuated action unit 20 jmakes the hammer 20 k driven for rotation toward the string 20 m. Thehammer 20 k is brought into collision with the string 20 m at the end ofrotation, and gives rise to vibrations of the string 20 m. The vibratingstring 20 m in turn gives rise to the vibrations of a sound board, whichforms a part of the piano cabinet 20 q, and an acoustic piano tone isradiated from the acoustic piano 20 a. The hammer 20 k rebounds on thestring 20 m, and is captured by the action unit 20 j.

When the human player releases the depressed key 20 f/20 h, the releasedkey 20 f/20 h starts backwardly to travel on the locus. The released key20 f/20 h permits the damper 20 n to move toward the string 20 m, and isbrought into contact with the string 20 m so as to decay the vibrationsof string 20 m. The released key 20 f/20 h permits the action unit 20 jto return to the rest position shown in FIG. 2B.

When the human player gives the artificial expression to the tones, thehuman player steps on the pedal of the pedal mechanism 20 p, and makesthe acoustic piano tone prolonged or lessened in loudness.

The code generating system 20 b includes key sensors 26 b, hammersensors 20 s and a music data producer 20 t. The key sensors 26 bmonitor the associated black and white keys 20 f/20 h, and supply keyposition signals S1 indicative of current key positions to the musicdata producer 20 t. The hammer sensors 20 s monitors the associatedhammers 20 k, and supply hammer position signals S2 indicative ofcurrent hammer positions to the music data producer 20 t. The keyposition signals S1 and hammer position signals S2 are analyzed in themusic data producer 20 t, and the music data codes are output from themusic data producer 20 t. The music data codes are supplied from themusic data producer 20 t to the electronic tone producer 26, andelectronic tones are produced through the electronic tone producer 26 onthe basis of the music data codes. Otherwise, the music data codes forma MIDI file, and the MIDI file is stored in a data storage of the codegenerating system 20 b.

The automatic playing system 20 c includes solenoid-operated actuators26 a, the key sensors 26 b, pedal sensors 26 c and an electronic system26 d. The solenoid-operated actuators 26 a are provided for the blackkeys 20 f, white keys 20 h and pedal mechanism 20 p, and are selectivelyenergized by the electronic system 20 d so as to give rise to themovements of the black keys 20 f, white keys 20 h and pedal mechanism 20p.

The electronic system 26 d is connected to the communication modules 20d and electronic tone producer 26. A MIDI file and an audio file aresupplied from the communication modules 20 d to the electronic system 26d, and the audio file is transferred from the electronic system 26 d tothe electronic tone producer 26. The electronic system 26 d selectivelydrives the black keys 20 f, white key 20 h and pedal mechanism 20 p onthe basis of the music data codes stored in the received MIDI file.

The electronic system 26 d includes an information processor and currentdriving circuits (not shown) such as, for example, pulse widthmodulators. A computer program for an automatic playing runs on theinformation processor so as to realize functions referred to as a“preliminary data processor 20 v”. a “motion controller 20 w” and a“servo controller 20 x”. Since the key event data codes and effect datacodes are produced on the assumption that they are applied to an idealMIDI musical instrument, the pieces of event data and pieces of effectdata are to be individualized to the automatic player musical instrument20. The preliminary data processor 20 v makes the music data codes inthe received MIDI file individualized to the automatic player musicalinstrument 20.

While the computer program is running on the information processor,preliminary data processor 20 v measures the lapse of time from theprevious key event and previous pedal event on the basis of the durationdata codes. The time to process a note-on event data code is assumed tocome. The motion controller 20 w analyzes the piece of event data, anddetermines a reference forward key trajectory. The reference forward keytrajectory is a series of values of target key position varied togetherwith time. If the black key 20 f or white key 20 h travels on thereference forward key trajectory, the hammer 20 k is brought intocollision with the string 20 m at a target time at which the acousticpiano tone is to be produced, and the acoustic piano tone is generatedthrough the vibrations of string 20 m at a target value of loudness. Thevalues of target key position are periodically supplied from the motioncontroller 20 w to the servo controller 20 x.

The key sensors 26 b supply the key position signals S1 indicative ofthe actual key position to the servo controller 20 x. The servocontroller 20 x calculates a value of target key velocity from a seriesof values of target key velocity and a value of actual key velocity froma series of values of actual key position, and compares the value oftarget key position and value of target key velocity with a value ofactual key position and a value of actual key velocity so as todetermine the difference between the target key position and the actualkey position and the difference between the target key velocity and theactual key velocity. The servo controller 20 x increases or decreases atarget value of mean current of a driving signal S4 in such a manner asto minimize the different of key position and difference of keyvelocity, and the current driving circuit (not shown) adjusts thedriving signal S4 to the target value of means current. Theabove-described jobs are periodically repeated for the black/white key20 f/20 h. Thus, the solenoid-operated actuators 26 a for the black andwhite keys 20 f/20 h, key sensors 26 b, servo controller 20 x andcurrent driving circuits (not shown) form a servo control loop, and theblack keys 20 f and white keys 20 h are forced to travel on thereference forward key trajectories through the servo control loop.

The time to process a note-off event data code is assumed to come. Themotion controller 20 w determines a reference backward key trajectory onthe basis of the piece of note-off event data. The reference backwardkey trajectory is a series of values of target key position toward therest position. If the black key 20 f or white key 20 h travels on thereference backward key trajectory, the released key 20 f/20 h permitsthe damper 20 n to be brought into contact with the vibrating string 20m at the time to make the note-off event occur, and the acoustic pianotone is decayed. The values of target key position are periodicallysupplied from the motion controller 20 w to the servo controller 20 x,and the servo controller 20 x forces the released key 20 f/20 h totravel on the reference backward key trajectory.

The time to process an effect data code is assumed to come. The motioncontroller 20 w determines a reference pedal trajectory on the basis ofthe piece of effect data. The reference pedal trajectory is a series ofvalues of target pedal position, and the values of target pedal positionare periodically supplied from the motion controller 20 w to the servocontroller 20 x. The pedal sensors 26 c monitor the pedals of the pedalmechanism 20 p, and supply a pedal position signal S3 indicative of anactual pedal position to the servo controller 20 x. The servo controller20 x calculates a target pedal velocity and an actual pedal velocity,and determines the mean current of a driving signal S5 in such a manneras to minimize the difference between the target pedal position and theactual pedal position and the difference between the target pedalvelocity and the actual pedal velocity. The current driving circuit (notshown) adjusts the driving signal S5 to the value of mean current, andthe driving signal S5 is supplied from the current driving circuit (notshown) to the solenoid-operated actuator 26 a provided for the pedal.The above-described jobs are periodically repeated, and the pedal isforced to travel on the reference pedal trajectory.

While the music tune is being reproduced on the basis of the music datacodes of the received MIDI file, the above-described control sequencesare repeated for all of the black and white keys 20 f/20 h to bedepressed and released and all the pedals to be depressed and released.This results in the playback of the music tune.

Description is hereinafter made on the communication modules 20 d andelectronic tone producer 26 with reference to FIG. 7. The communicationmodules 20 d include a controller 21, a clock 21 a, a data storage 22, acommunication module 23, a communication module 24 and a control panel25. The communication network 40 is connected to the communicationmodule 23, and the automatic player musical instrument 20 communicateswith the music data distribution server computer 30 through thecommunication module 23 under the supervision of the controller 21. Theother communication module 24 is implemented by an USB (Universal SerialBus) interface or a radio transmitter and receiver, and is used forcommunication with the sound reproducer 10.

The controller 21 is implemented by an information processor, and acentral processing unit, peripheral processors, a program memory and aworking memory are incorporated in the information processing system. Inthis instance, the information processor is shared between thecontroller 21 and the electronic system 26 d. A computer program for thecommunication with external apparatus is stored in the program memory,and runs on the central processing unit so as to achieve thecommunication with the music data distribution server computer 30,reception of MIDI files from the music data distribution server computer30, communication with the sound reproducer 10 and reception of durationdata codes and audio signal from the sound reproducer 10 as will behereinlater described in detail.

The clock 21 a has an oscillator, which is implemented by a quartzoscillator and an amplifier, and a frequency demultiplier connected tothe oscillator for producing various clock signals, and counts the clocksignal so as to measure a lapse of time. The controller 21 periodicallysets the clock 21 a with the duration data codes of an audio file sothat the lapse of time on the clock 21 a is equal to the lapse of timefrom the audio data code at the head of the audio file. The durationdata codes of audio file are supplied from the sound reproducer 10 tothe communication module 24, and are transferred from the communicationmodule 24 to the controller 21.

The data storage 22 is, by way of example, implemented by a hard diskunit. When the program and MIDI files arrive at the communication module23, the controller 21 transfers the program and MIDI files to the datastorage 22, and the program and MIDI files are stored in the datastorage 22.

While the automatic playing system 20 c is performing a music tune onthe acoustic piano 20 a on the basis of the MIDI file already stored inthe data storage 22, the controller 21 periodically checks the clock 21a to see whether or not the time period expressed by the duration datacode is expired. When the controller 21 finds that the time period isexpired, the controller 21 supplies the next event data code or codes tothe electronic system 26 d, and the electronic system 26 d selectivelysupplies the driving signals S4 and S5 to the solenoid-operatedactuators 26 a so as to depress and release the black keys 20 f, whitekeys 20 h and pedal mechanism 20 p. Thus, the time intervals aremeasured with reference to the clock 21 a so as to drive the acousticpiano 20 a well in synchronism with the conversion from the audio datacodes in the audio file to the audio signal.

The electronic tone producer 26 includes an electronic tone generator 26e, a mixer 26 f, an amplifier 26 g and loud speakers 26 h. As describedhereinbefore, while a human player is playing a tune on the acousticpiano 20 a, the code generating system 20 b produces the music datacodes expressing the acoustic piano tones in a real time fashion, andsupplies the music data codes to the electronic tone producer 26. Anaudio signal is produced in the electronic tone generator 26 e on thebasis of the music data codes, and is supplied from the electronic tonegenerator 26 e to the mixer 26 f. If another audio signal is suppliedfrom the controller 21 to the mixer 21, the audio signals are mixed withone another, and are amplified through the amplifier 26 g. If any audiosignal is not supplied from the controller 21, the audio signal passesthrough the mixer 26 f, and is amplified through the amplifier 26 g.After the amplification, the audio signal is supplied to the loudspeakers 26 h, and is converted to the electronic tones through the loudspeakers 26 h.

Sound Reproducer

FIG. 8 shows the system configuration of sound reproducer 10. The soundreproducer includes a controller 11, communication modules 12 and 13, adata storage 14, a control panel 15, a display panel 16 and a soundsystem 17. The controller 11, communication modules 12 and 13, datastorage 14, control panel 15, display panel 16 and sound system 17 areconnected to an internal bus system 10 a so that the controller 11 iscommunicable with the other system components 12, 13, 14, 15, 16 and 17through the internal bus system 10 a.

The controller 11 is implemented by an information processor, and acentral processing unit, peripheral processors, a program memory and aworking memory are incorporated in the information processor.Application programs such as www browser 14 a and an audio playbackprogram 14 b are stored in the data storage together with audio files 14c and an FTA (File Allocation Table). The application programsselectively run on the central processing unit.

The communication module 12 is connected to the communication network40. While the www browser is running on the central processing unit, thesound reproducer 10 communicates with the music data distribution servercomputer 30, and the audio files are downloaded to the data storage 14.

The other communication module 13 is implemented by an USB interface ora radio transmitter and receiver, and is connected to the communicationinterface 24 of the automatic player musical instrument 20 through awired channel or a radio channel. The controller 11 transfers the audiosignal and duration data codes in an audio file through thecommunication module 13 to the communication module 24.

The control panel 15 includes a computer keyboard and a mouse. A usergives his or her instruction to the sound reproducer 10 through thecontrol panel 15. The display panel 16 is, by way of example,implemented by a liquid crystal display panel, and controller 11produces visual images on the display panel 16. The user has dialogueswith the controller 11 through the control panel 15 and display panel16.

The sound system 17 includes amplifiers, loud speakers and a headphone.When a user wishes simply to playback a music tune, the audio data codesare transferred from the audio file in the data storage 14 to the soundsystem 17, and an audio signal is retrieved from the audio data codes.The audio signal is converted to the electric tones through theamplifiers and loud speakers.

On the other hand, when the user instructs the controller 11 toreproduce music tunes and narration/talk in a program through theautomatic player musical instrument 20, the audio signal is transferredthrough the communication module 13 to the communication module 24 ofautomatic player musical instrument 20, and the duration data codes arefurther transferred to the communication module 24 of automatic playermusical instrument 20 for the synchronization between playback andconversion from the audio data codes to the audio signal. The audiosignal is relayed through the controller 21 to the mixer 26 f, and theelectric voice is produced through the loud speakers 26 h.

Behavior of Music Reproducing System Download

First, the sound reproducer 10 behaves until storing an audio file asfollows. FIG. 9 shows a communication sequence between the soundreproducer 10 and the music data distribution server computer 30. Thecomputer program 33 c for music data distribution has been alreadyrunning on the controller 31 of the music data distribution servercomputer 30.

A user is assumed to wish to download an audio file for a program. Theuser gives an instruction to communicate with the data distributionserver computer 30 to the sound reproducer 10 through the control panel15. Then, the controller 11 acknowledges user's instruction as indicatedby S1, and makes the www browser to run on the controller 11. Thecontroller 11 designates the URL address indicative of the memorylocation assigned a menu or a list of programs, and sends a request fordownloading the menu, i.e., an http request from the communicationmodule 12 to the communication module 32 of the data distribution servercomputer 30 as indicated by S2.

Upon reception of the request, the music data distribution servercomputer 30 reads out the visual data expressing the menu from the datastorage 33 as indicated by S3, and transmits the visual data as an httpresponse to the sound reproducer 10 as indicated by S4.

The visual data expressing the menu arrives at the communication module12. Then, the controller 11 produces the visual image of menu on thedisplay panel 16 as indicated by S5. FIG. 10 shows the visual image ofmenu produced on the display panel 16. Program names “Piano fan”, “Pianotunes No. 1” and “Piano tunes No. 2” take place under a prompt message“Place the mark in the box on the left side of your favorite program,and push “download””. The programs are followed by recommendation tousers. Though not shown in the display panel, the URL addresses areadded to the program names by means of the anchor tag of HTML (HyperText Markup Language).

The user selects a program from the menu, and places the mark in the boxon the left side of the program name by means of a pointer. When theuser clicks the image of button “Download”, the controller 11acknowledges the user's selection of program as indicated by S6, andtransmits the request, which contains the URL address, from thecommunication module 12 to the communication module 32 of the music datadistribution server computer 30 as by S7. When the user does not findany favorite program, he or she clicks the image of button “Next”. Then,other programs are displayed.

Upon reception of the request, the controller 31 accesses the audio fileat the URL address, and reads out the audio file corresponding to theprogram name from the data storage 33 as indicated by S8. The controller31 transmits the audio file from the communication module 32 to thecommunication module 12 as indicated by S8.

The audio file arrives at the communication module 12. Then, thecontroller 11 transfers the audio file to the data storage 14, andstores the audio file in the data storage 14 as indicated by S10. Thus,the download is accomplished.

Playback Only Through the Sound Reproducer

The user is assumed to instruct the controller 11 the playback throughthe sound system 17. In other words, any collaboration is not requested.The audio playback program starts to run on the controller 11. Thecontroller 11 reads out the program names of audio files already storedin the data storage 14, and produces a list of program name on thedisplay panel 16 together with a prompt message “Select a program to bereproduced” as shown in FIG. 11.

Since three audio files “Piano fan!”, “Complete collection No. 1 ofpiano concertos” and “Best pianos” are stored in the data storage 14,the program names of audio files are produced on the display panel 16.Each of the program names is followed by box “Solo” and box“Collaboration”. The user moves the cursor into the box “Solo” or“Collaboration”, and clicks it. The user is assumed to select theprogram “Piano fan!”, and clicks the box “Solo”. The controller startsto transfer the audio data codes in the audio file “Piano fan!” to thesound system 17, and are converted to the audio signal. As shown in FIG.5, the audio file “Piano fan!” is labeled with the program identifier“CID 001”, and contains “narration 1”, “music tune 1”, “narration 2”,“music tune 2, “music tune 3”, “narration 3” and “music tune 4” as shownin FIG. 3. Therefore, the audio signal is converted to the narration andmusic tunes in the order shown in FIG. 3.

Collaboration with Automatic Player Musical Instrument

FIG. 12 shows a communication sequence among the sound reproducer 10,automatic player musical instrument 20 and music data distributionserver computer 30. The user establishes a communication channel betweenthe communication module 13 of sound reproducer 10 and the communicationmodule 24 of automatic player musical instrument as indicated by S11,and gives the sound reproducer 10 an instruction for playback. The audioplayback program starts to run on the controller 11, and produces thepicture shown in FIG. 11 on the display panel 16.

The user is assumed to click the box “Piano fan!” and box“Collaboration”. Then, the controller 11 acknowledges the user'sinstruction for playback as indicated by S12. The controller 11 accessesthe FAT, and reads out the file identifier, which includes the pieces ofdata information expressing the file name “piano-fan.wab”, file size“41.5 mega-bytes” and creation date “2006/1/25” from the FAT. Thecontroller 11 transmits the file identifier from the communicationmodule 13 to the communication module 24 of the automatic player musicalinstrument 20 as indicated by S13.

Upon reception of the file identifier, the controller 21 transmits thefile identifier from the communication module 23 to the music datadistribution sever computer 30 as indicated by S14.

When the file identifier arrives at the communication module 32, thecontroller 31 accesses the program management table 33 a shown in FIG.5, and determines the program identifier “CID001” as indicated by S15.The controller 31 searches the data storage 33 for the program labeledwith the program identifier “CID001”, and reads out the program from thedata storage 33 as indicated by S16. The controller 31 transmits theread-out program from the communication module 32 to the communicationmodule 23 of the automatic player musical instrument 20 as indicated byS17.

The program arrives at the communication module 23. Then, the controller21 searches the data storage 22 for the program labeled with the programname to see whether or not the MIDI files of the program have beenalready stored in the data storage 22 as indicated by S118. As shown inFIG. 6, the program contains the MIDI files “piano-fan001.mid”,“piano-fan002.mid”, “piano-fan003.mid” and “piano-fan004.mid”. Only theMIDI files “piano-fan002.mid” and “piano-fan003.mid” are assumed to bestored in the data storage 22. In other words, the MIDI files“piano-fan001.mid” and “piano-fan004.mid” are not found in the datastorage 22. The controller 21 transmits a http request, which containsthe URL addresses “http://www.abc.co.jp/CID001/piano-fan001.mid” and“http://www.abc.co.jp/CID001/piano-fan004.mid”, from the communicationmodule 23 to the communication module 32 as indicated by S19.

The hppt request is received by the communication module 32. Then, thecontroller 31 reads out the MIDI file “piano-fan001.mid”, which islabeled with the URL address“http://www.abc.co.jp/CID001/piano-fan001.mid”, from the data storage33, and transmits the MIDI file from the communication module 32 to thecommunication module 23 as an http response. The controller 31 furtherreads out the MIDI file, which is labeled with the URL address“http://www.abc.co.jp/CID001/piano-fan004.mid”, from the data storage33, and transmits the MIDI file from the communication module 32 to thecommunication module 23. Thus, the MIDI files are downloaded to theautomatic player musical instrument 20 as indicated by S20.

The controller 21 transfers the MIDI files from the communication module23 to the data storage 22, and stores the MIDI files in the data storage22 as indicated by S21.

When the MIDI files are stored in the data storage 22, the controller 21gets ready to perform the music tunes 1 to 4. The controller 21 sends anotice of ready-state from the communication module 24 to thecommunication module 13 of sound reproducer 10 as indicated by S22.

Upon reception of the notice of ready-state, the controller 11 producesa picture shown in FIG. 13 on the display panel 16 so as to inform theuser of the ready-state and ask for permission. The user is assumed toclick the box “Yes”. Then, the controller 11 sends a notice ofinitiation from the communication module 13 to the communication module24 as indicated by S23.

The sound reproducer 10 starts the conversion from the audio data codesto the audio signal as indicated by S24. The automatic player musicalinstrument 20 starts the playback on the basis of the music data codesof MIDI file as indicated by S25, and starts to measure the lapse oftime with the clock 21 a. The audio signal and duration data codes aretransmitted from the communication module 13 to the communication module24 as indicated by S26.

FIG. 14 shows a job sequence realized through execution of the computerprogram installed in the controller 21 and electronic system 26 d. Asshown in FIG. 6, the program contains the playback schedule. The firstmusic tune starts at 1′ 16″, and is terminated at 5′48″, and the secondmusic tune starts at 6′29″, and is terminated at 14′00″. “Narration 1”is to be reproduced until 1′16″, and “narration 2” is inserted betweenthe first music tune and the second music tune as shown in FIG. 3.

The controller 21 checks the clock 21 a to see whether or not the timeto playback the first music tune comes as by step S101. The answer atstep S101 is given negative “No” from the initiation of playback to1′16″, and the controller 21 transfers the audio signal from thecommunication module 24 to the mixer 26 f so as to reproduce thenarration 1.

The answer at step S101 is changed to affirmative “Yes” at 1′16″. Thenthe controller 21 supplies the first key event data code or codes fromthe data storage 22 to the electronic system 26 d, and mutes theelectric tones to be produced from the audio signal as by step S103.Thus, the controller 21 blocks the mixer 26 f from the audio signalconverted from the audio data codes. Any electric tone is not reproducedfrom the audio signal.

The user has two options, i.e., the automatic playing system 20 c andelectronic tone producer 26. If the user selects the automatic playingsystem 20 c, the black keys 20 f, white keys 20 h and pedal mechanism 20p are selectively driven by the solenoid-operated actuators 26 a asdescribed hereinbefore, and the acoustic piano tones are producedthrough the acoustic piano 20 a. On the other hand, when the userselects the electronic tone producer 26, the music data code or codesare transferred to the electronic tone generator 26 e. The audio signalis produced on the basis of the music data code or codes, and issupplied through the mixer 26 f and amplifier 26 g to the loudspeakers26 h. The audio signal is converted to the electric tones along themusic passage of the first music tune.

Subsequently, the controller 21 checks the clock 21 a to see whether ornot the time to terminate the playback comes as by step S104. The answerat step S104 is given negative “No” until 5′48″, and the controllerreturns to step S103. The controller checks the clock 21 a to seewhether or not the time period between the key event and the next keyevent is expired. While the answer is being given negative “No”, thecontroller 21 continuously sets the clock 21 a with the duration datacodes of the audio file. When the time period is expired, the controller21 transfers the next event data code or codes to the electronic system26 d for producing the acoustic piano tone or electronic tone.

The controller 21 reiterates the loop consisting of steps S101 to stepS104 until 5′48″. When the answer at step S104 is changed to affirmative“Yes”, the controller 21 restarts to supply the audio signal to themixer 26 f, and the narration 2 is reproduced. The audio signal ischanged to the event data codes at 6′29″, and the second music tune isreproduced through the automatic player musical instrument 20 until14′00″. The third music tune starts at 14′13″ without any narration, andis terminated at 24′13″. The third music tune is followed by thenarration 3 reproduced from the audio signal, and the fourth music tuneis reproduced through the automatic player musical instrument 20 between25′20″ to 31′23″. Thus, the program proceeds in the order shown in FIG.6, and the narration and music tunes are selectively reproduced on thebasis of the audio files and MIDI files.

When all the contents of program are reproduced, the sound reproducer 10terminates the data processing as indicated by S27, and sends a noticeof termination to the automatic playing musical instrument 20 asindicated by S28. Upon reception of the notice of termination, theautomatic playing musical instrument 20 also terminates the dataprocessing.

As will be understood from the foregoing description, the clock 21 a,which is periodically set with the duration data codes of the audiofile, makes the sound reproducer 10 synchronized with the automaticplayer musical instrument 20 in spite of the difference in formatbetween the duration data codes in the audio file and the duration datacodes in the MIDI file, and the program makes it possible to reproducethe music tunes and narration/talk in collaboration between the soundproducer 10 and the automatic playing musical instrument 20. Theautomatic player musical instrument 30 is available for the playback ofmusic tunes so that the music reproducing system gives the music tuneswith convert-hall presence.

Modifications of First Embodiment

In the following description on the modifications, system components ofthe modifications are labeled with references designating thecorresponding system components of music reproducing system 100 withoutdetailed description for the sake of avoiding repetition.

The computer programs may be installed in the controllers 11, 21 and 31from a magnetic tape cassette, a magnetic disk, a flexible disk, anoptical disk, an opto-magnetic disk, a compact disc, a DVD (DigitalVersatile Disk) or a RAM stick.

First Modification

The first modification of the music reproducing system is different fromthe first embodiment in the communication from S14 to S21. In the firstembodiment, only the MIDI files not found in the data storage 22 aredownloaded from the music data distribution server computer 30. Thisfeature is desirable from the viewpoint of reduction of load indownloading work. On the contrary, when the automatic player musicalinstrument 20 transmits the file identifier to the music datadistribution server computer 30, all of the MIDI music data files andprogram are concurrently downloaded from the music data distributionserver computer 30 to the automatic player musical instrument 20. Thus,the communication is made simplified rather than the communication inthe first embodiment.

Second Modification

FIG. 15 illustrates the system configuration of the second modificationof the first embodiment. Although the audio files, programs and MIDIfiles are stored in the music data distribution server computer 30, theaudio files and programs are stored in a server computer 30 a differentfrom the server computers 30 b and 30 c where the MIDI files are stored.

When a user instructs the sound producer 10 to reproduce a program incollaboration with the automatic player musical instrument 20, theprogram and audio files are firstly downloaded from the server computer30 a to the sound reproducer 10, and makes the automatic player musicalinstrument 20 to transmit a request for downloading the MIDI files atthe URL addresses in the program from the server computer 30 b and/or 30c to the automatic player musical instrument 20.

It is not easy for the service provider to prepare a huge number ofaudio files and a huge number of MIDI file in the server computer. Inthe second modification, plural service providers bear the huge numberof files in the plural server computers 30 a, 30 b and 30 c so that themusic reproducing system is easily established in the network. Thus, theservice providers can offer a large number of programs to users throughthe second modification of the music reproducing system.

Third Modification

Turning to FIG. 16, there is shown the third modification of the musicreproducing system of the present invention. The third modificationincludes a composite musical instrument 10 x, another composite musicalinstrument 20 x, the music data distribution server computer 30 and thecommunication network 40. Although the sound reproducer 10 is physicallyseparated from the automatic player musical instrument 20 in the firstembodiment shown in FIG. 1, a built-in computer system 10 y and anautomatic player piano 20 z have a unitary structure in the compositemusical instrument 10 x, and a built-in computer system 10 y and anelectronic keyboard 20 y also have a unitary structure in the compositemusical instrument 20 x.

The built-in computer systems 10 y are similar in system configurationto the personal computer system 10. In the composite musical instrument10 x, the audio signal, which is produced from audio data codes in anaudio file, is converted to the electric voice and electric tonesthrough the sound system 17, and the acoustic piano tones are producedthrough the acoustic piano on the basis of the music data codes in MIDIfiles. On the other hand, although the audio signal is also converted tothe electric voice and electric tones through the sound system 17 in thecomposite musical instrument 20 x, the electronic tones are producedthrough an electronic tone producer, which is similar to the electronictone producer 26, of the electronic keyboard 20 y on the basis of themusic data codes in MIDI files. For this reason, the automatic playerpiano 20 z is not equipped with the electronic tone producer 26, and theelectronic keyboard 20 y is much simpler than the automatic playermusical instrument 20.

Fourth Modification

Turning back to FIG. 15, the fourth modification of the musicreproducing system has an accounting system 50. The accounting system 50is, by way of example, implemented by various accounting networks suchas the Japan Bank Network and/or CAFIS (Credit And Finance InformationSystem), and is connected to the server computers 30 a, 30 b and 30 c.When a user downloads the programs, audio files and MIDI files, theservice providers write out bills, and settle accounts with the usersthrough the accounting system 50.

In detail, the audio files and MIDI files are priced, and areaccompanied with price lists in the data storages 33 of the servercomputers 30 a, 30 b and 30 c. A user list is further stored in the datastorages 33, and the users have been registered in the user list. Thename, address, birthday, user identifier, bank account number and creditcard number are written in the user list for each of the registeredusers.

When a user requests the server computer 30 a, 30 b or 30 c for thedownload of an audio file, a program or a MIDI file, the controller 31requests the user to send the user identifier to the server computer 30a, 30 b or 30 c, and transmits the program or file to the soundreproducer or automatic player musical instrument 20 after theconfirmation of the user.

Upon completion of the download, the controller 31 accesses the pricelist so as to write out a bill, and sends the bill to the account system50 for the settlement. If the user requests the service providers tosettle the accounts through the credit card system, the serviceproviders put the bill in the credit account. Thus, the bills areautomatically settled at the user's account number through theaccounting system 50.

Fifth Modification

The fifth modification of music reproducing system is different from themusic reproducing system 100 in that the automatic player musicalinstrument 20 can reproduce music tunes through in-stream playback onthe basis of MIDI files. In the in-stream playback, the music data codesare transmitted from the music data distribution server computer 30through the communication network 40, and the music tune is reproducedon the basis of the music data codes in a real time fashion. Otherwise,the MIDI file is stored in the random access memory, and is erased afterthe playback. For this reason, it is difficult to reuse the music datacodes after the in-stream playback.

A user can choose the playback method between the standard playbackafter the download and the in-stream playback. If the user chooses thestandard playback, the automatic player musical instrument 20 behaves assimilar to that shown in FIG. 12. On the other hand, when the userchooses the in-stream playback, the music data codes are transmittedfrom the music data distribution server computer 30 to automatic playermusical instrument 20, and are temporarily stored in the random accessmemory of the controller 21. The music data codes are timely transferredto the electronic system 26 d so as to produce the acoustic piano tonesor electronic tones on the basis of the event data codes.

In case where the fee-charging download is employed in the fifthmodification, the in-stream playback is beneficial to users, because theprice of MIDI files for the in-stream playback is lower than the priceof MIDI files for the standard playback. Users may choose the standardplayback for music tunes out of the copyright, and choose the in-streamplayback for the copyrighted music tunes.

In order to respond to user's choice, the MIDI files are broken downinto two groups, the copyrighted music tunes, i.e., the first group andthe music tunes out of the copyright, i.e., the second group, and a tagindicative of the first group is added to the MIDI files in the firstgroup, and another tag indicative of the second group is added to theMIDI files in the second group.

A user is assumed to reproduce the contents of a program. The programcontains copyrighted music tunes and music tunes out of the copyright.In this situation, the MIDI files in the second group are downloadedinto the data storage 22. However, the MIDI files in the first groupsare not downloaded.

While the automatic player music instrument 20 is collaborating with thesound reproducer 10, the music tunes out of the copyright are reproducedon the basis of the music data codes in the MIDI files stored in thedata storage 22 between the start time and the termination timedesignated in the program, and the controller 21 requests the music datadistribution server computer 30 to transmit the music data codesexpressing the copyrighted music tunes to the communication module 23before the start time so as to permit the electronic system 26 d tostart the playback at the start time. Upon completion of thereproduction of contents of program, the music data codes in the randomaccess memory are erased.

Thus, the service provider can restrict the reuse of the MIDI filethrough the in-stream playback, and offer the program contents at lowprice.

Sixth Modification

The sixth modification of music reproducing system is different from themusic reproducing system 100 in that only one of the sound reproducer 10and automatic player musical instrument 20 has the communicationcapability with the music data distribution server computer 30.

Only the sound reproducer 10 is assumed to have the communicationcapability. The automatic player musical instrument 20 acquires aprogram and MIDI files from the music data distribution server computer30 through the sound reproducer 10.

In detail, the automatic player musical instrument 20 requests the soundreproducer 10 for the acquisition of program and MIDI files through thecommunication channel 40 c, and the program and MIDI files aredownloaded from the communication module 32 to the communication module12. The controller 11 transfers the program and MIDI files from thecommunication module 13 to the communication module 24 through thecommunication channel 40 c.

Thus, the automatic player musical instrument 20 or sound reproducer 10of the sixth modification is simpler than that of the music reproducingsystem 100.

Seventh Modification

The seventh modification is different from the music reproducing system100 in that the playback on the basis of the MIDI file is madesynchronous with the conversion from the audio data codes to the audiosignal through the synchronization technique disclosed in Japan PatentApplication laid-open No. 2003-271138 or the synchronization techniquedisclosed in Japan Patent Application laid-open No. 2006-47761.

The synchronization technique disclosed in the former laid-open is thatunique peaks of an audio signal are correlated with music data codes ina table. The controller checks the table to see whether or not the musicdata codes are processed concurrently with the unique peaks. When theanswer is given negative, the controller advances the internal clock orputs the internal clock slow. Since the time intervals between the keyevents are measured with the internal clock, the two apparatus aresynchronized with one another.

The synchronization technique disclosed in the latter laid-open is thatthe synchronization control is assigned to one of the plural channelsbetween two apparatus. While the audio data codes are being converted tothe audio signal, the controller of sound reproducer assigns the piecesof audio data to the channel L and LTC, which is a time code defined inthe SMTPE (Society of Motion Picture and Television Engineers) andcontains the pieces of time data and file identifier, to the channel R,and transmits the pieces of audio data and LTC to the automatic playermusical instrument through the channels L and R. The controller ofautomatic player musical instrument makes the internal clock set withthe pieces of time data contained in the LTC.

Eighth Modification

The eighth modification is different from the music reproducing system100 in that the controller 21 does not block the mixer 26 f from theaudio signal, which is produced from the audio data codes in the soundreproducer 10. In this instance, the electric tones are produced fromthe audio signal concurrently with the acoustic piano tones orelectronic tones.

The electric tones may be produced through the sound system 17 or bothof the loudspeakers 26 h and sound system 17. In case where the electrictones are produced through the sound system 17, the audio signal is nottransmitted to the communication module 24, and only the duration datacodes are supplied through the communication module 24 to the controller21.

Ninth Modification

The ninth modification is different from the music reproducing system100 in that either audio files, program or MIDI files are read out froma portable information storage medium such as, for example, a compactdisc, a flexible disc, an MD, an audio cassette tape or a record disc.The other materials are downloaded from the music data distributionserver computer 30 through the communication network 40.

Tenth Modification

The tenth modification is different from the music reproducing system100 in that the MIDI file or files are downloaded after the initiationof reproduction of a program. Of course, each MIDI file is requiredbefore the start time.

Eleventh Modification

The eleventh modification is different from the music reproducing system100 in that another sort of electronic device serves as the soundreproducer 10. The personal computer may be replaced with a mobiletelephone, a PHS (Personal Handy phone System) terminal, a PDA (PersonalDigital Assistants) or a portable music player.

Second Embodiment

FIG. 17 shows the system configuration of another music reproducingsystem 100A of the present invention. The music reproducing system 100Acomprises a sound reproducer 10A, an automatic player musical instrument20A, a music data distribution server computer 30A and a communicationnetwork 40A. The system configuration of music reproducing system 100Ais analogous to the music reproducing system 100. However, the musicreproducing system 100A is different from the music reproducing systemin that the sound reproducer 10A and automatic player musical instrument20A reproduce the contents of a program in collaboration therebetween inthe absence of a MIDI file expressing a music tune contained in theprogram.

In detail, the sound reproducer 10A, automatic player musical instrument20A and music data distribution server computer 30A are connected to thecommunication network 40A through a wire communication channel or aradio communication channel, and communicate with one another throughthe communication network 40A. The sound reproducer 10A is furtherconnected to the automatic player musical instrument 20A through a wirecommunication channel or a radio communication channel 40 c so that thesound reproducer 10A and automatic player musical instrument 20A aredirectly communicable with one another through the wire communicationchannel/radio communication channel 40 c.

The sound reproducer 10A is, by way of example, implemented by apersonal computer system, and an audio playback computer program isinstalled in the personal computer system so as to convert pieces ofaudio data or audio data codes to tones and/or sound. The audio datacodes express discrete values on the waveform of an audio signalrepresentative of the tones and/or sound.

The automatic player musical instrument 20A is a combination of anacoustic piano and an automatic playing system, and the automaticplaying system performs a music tune on the acoustic piano without anyfingering of a human player. As will be described hereinlater, theautomatic player musical instrument 20A further includes an electronictone producer, and electronic tones are produced on the basis of themusic data codes by means of the electronic tone producer. Thus, usershave a choice between the acoustic piano tones and the electronic tones.

The music data distribution server computer 30A is put on the WWWtogether with the sound reproducer 10A and automatic player musicalinstrument 20A. Thus, the music data distribution server computer 30A,sound reproducer 10A and automatic player musical instrument 20A form aclient-server system through the communication network 40A.

The communication network 40A includes various sorts of networks such asthe internet, telephone networks and so forth. The MIDI files, programsand audio files are distributed from the music data distribution servercomputer 30A to the sound reproducer 10A and automatic player musicalinstrument 20A through the communication network 40A.

Programs are prepared for reproduction through the sound reproducer 10Aand automatic player musical instrument 20A in collaboration with oneanother. At least one music tune is contained in the program togetherwith narration and/or talk, and is expressed by the audio data codes inan audio file as well as the music data codes in a MIDI file.

When a user wishes to reproduce the program, the user gives theinstruction to reproduce the music tune and narration. The audio fileand MIDI file are downloaded to the sound reproducer 10A and automaticplayer musical instrument 20A, respectively, and the narration and musictune are reproduced through the sound reproducer 10A and automaticplayer musical instrument 20A, respectively, as similar to the musicreproducing system 100. However, all the MIDI files in a program are notalways stored in the music data distribution server computer 30A.Although the MIDI files, which are stored in the music data distributionserver computer 30A, are downloaded to the automatic player musicalinstrument 20A, the automatic player musical instrument 20A can notacquire the remaining MIDI file or files. In this situation, while thereproduction is proceeding along the program, the automatic playermusical instrument 20A reproduces the music tunes on the basis of theacquired MIDI files, and the sound reproducer 10A reproduces the othermusic tune or tunes from the audio file or files instead of the MIDIfile or files as well as the narration. Thus, the music reproducingsystem 100A can reproduce all the music tunes in the program in spite ofthe absence of MIDI file or files.

Music Data Distribution Server Computer

FIG. 18 illustrates the circuit configuration of the data distributionserver computer 30A. The data distribution server computer 30A includesa controller 31A, a communication module 32A and a data storage 33A, andthe controller 31A, communication module 32A and data storage 33A areconnected to one another through an internal bus system 34A.

Though not shown in the drawings, the controller 31A includes a centralprocessing unit, peripheral processors, a program memory and a workingmemory, and a computer program 33Ac runs on the controller 31A so as toachieve various tasks such as a data management, analysis of requests ofclients, a file transmission and so forth. The communication module 32Ais connected to the communication network 40A. The client requests arereceived at the communication module 32A, and programs, audio files andMIDI files are transmitted from the communication module 32A to thesound reproducer 10A and automatic player musical instrument 20A. Thedata storage 33A is, by way of example, implemented by a hard disk unitor hard disk units, and the storage space in the hard disk or disks areassigned to a program management table 33 a, programs 33Ab, a computerprogram 33Ac, audio files 33 d and MIDI files 33 e.

A job sequence is expressed by the computer program 33Ac fordistributing the audio files 33 d and MIDI files 33 e to clients, andpieces of visual image data are further stored in the memory subspaceassigned to the computer program 33Ac. Various pictures to be producedin client's display panels are expressed by the pieces of visual imagedata. File identifiers for the audio files are correlated with programsin the program management table 33 a, and the MIDI files and URLaddresses are correlated with the program identifiers in the programs33Ab.

FIG. 19 shows the data structure of an audio file and MIDI files to bereproduced in a program. The audio file contains the audio data codesand duration data codes. The duration data codes express a lapse of timefrom the first audio data code at the head of the audio file. On theother hand, discrete values are sampled from the waveform of an analogaudio signal at 44.1 kilo-hertz, and are stored in the audio data codes.

The series of audio data codes in the audio file expresses pluralcontents such as, for example, narration and tunes. The tune 1 isexplained in the narration 1, the tunes 2 and 3 are explained in thenarration 2, and the tune 3 is explained in the narration 3. While thecontents in audio file are being reproduced, the audio data codes forthe narration 1 are firstly converted to voice, the audio data codes forthe tune 1 are converted to tones, subsequently, the audio data codesfor the narration 2 are converted to voice, and is followed by theconversion of audio data codes for the tones of tunes 2 and 3,thereafter, the audio data codes for the narration 3 are converted tovoice, and, finally, the audio data codes for the tune 4 are convertedto tones. The narration 1, 2 and 3 and tunes 1, 2, 3 and 4 form aprogram. Thus, a single music tune or plural music tunes are to bereproduced in each program.

Plural MIDI files are correlated with the audio file. Tones arereproduced on the basis of the music data codes in the MIDI file 1instead of the playback of the tune 1 recorded in the audio file, andthe tones are reproduced on the basis of the music data codes in theMIDI files 2 and 3 instead of the playback of the tunes 2 and 3.However, any MIDI file, which expresses the tune 4, is not stored in thedata storage 33A.

While the program is being reproduced, the music tunes 1, 2 and 3 arereproduced by means of the automatic player musical instrument 20A, andthe narration 1, 2 and 3 and music tune 4 are reproduced from the audiosignal produced in the sound reproducer 10A. Thus, the program iscompletely reproduced through the sound reproducer 10A and automaticplayer musical instrument 20A in spite of the absence of MIDI file forthe music tune 4.

Turning to FIG. 20, a MIDI file is broken down into a header chunk HCand a track chunk TC. Pieces of attribute data are stored in the headerchunk for the MIDI file, and the event data codes and duration datacodes are stored in the track chunk TC. Although the duration data codesof audio file express a lapse of time from the audio data code at thehead of audio file, each of the duration data codes of MIDI fileexpresses a lapse of time between a key event and the next key event.

FIG. 21 illustrates the contents of the program management table 33 a.The file identifier is broken down into an audio file name, a file sizeand a creation date. The audio file is identified with the audio filename. The file size expresses the number of bytes occupied by the audiofile, and the creation date is indicative of the year, month and day atwhich the audio file is created. For example, an audio file is labeledwith the audio file name “piano-fan.wab”. 41.5 mega-bytes are requiredfor the audio file named as “piano-fan.wab”, and the audio file iscreated in Jan. 25, 2006. The audio file named as “piano-fan.wab” iscorrelated with the program labeled with the program identifier “CID001”.

When a program is revised, the revised date is written as the creationdate. One of the file size and creation date may be omitted from thefile identifier. The file identifiers shown in FIG. 21 do not set anylimit to the technical scope of the present invention. Any format isavailable for the file identifier in so far as the audio file isdesignable with the file identifier. For example, numerals may be simplyassigned to the audio files.

The controller searches the program management table 33 a for the audiofile by using the fine identifier as a key, and determines the programidentifier correlated with the file identifier.

FIG. 22 illustrates the contents of the program labeled with the programidentifier “CID 001”. The program labeled with the program identifier“CID 001” is correlated with a playback schedule, URL addresses of MIDIfiles and MIDI file names in the program. Start time at which theplayback starts and termination time at which the playback is completedare written in the playback schedule for each of the MIDI files. Forexample, the playback from the MIDI file “piano-fan001.mid” starts at 1min. and 16 sec, and the playback is completed at 5 min. and 48 sec, andthe MIDI file is stored at the memory location assigned the URL address“http://www.abc.Co.jp/CID001/piano-fan001.mid”.

As described hereinbefore in conjunction with the correlation betweenthe audio file and the MIDI files, the MIDI file for the music tune 4 isnot stored in the music data distribution server computer 30A, neitherURL address nor file name is written in the fourth row as shown.

Sound Reproducer

FIG. 23 shows the system configuration of sound reproducer 10A. Thesound reproducer 10A includes a controller 11A, communication modules12A and 13A, a data storage 14A, a control panel 15A, a display panel16A and a sound system 17A. The controller 11A, communication modules12A and 13A, data storage 14A, control panel 15A, display panel 16A andsound system 17A are connected to an internal bus system 10Aa so thatthe controller 11A is communicable with the other system components 12A,13A, 14A, 15A, 16A and 17A through the internal bus system 10Aa.

The controller 11A is implemented by an information processor, and acentral processing unit, peripheral processors, a program memory and aworking memory are incorporated in the information processor.Application programs such as www browser 14 a and an audio playbackprogram 14 b are stored in the data storage 14A together with audiofiles 14 c and an FTA (File Allocation Table). The application programsselectively run on the central processing unit.

The communication module 12A is connected to the communication network40A. While the www browser is running on the central processing unit,the sound reproducer 10A communicates with the music data distributionserver computer 30A, and the audio files are downloaded to the datastorage 14A.

The other communication module 13A is implemented by an USB interface ora radio transmitter and receiver, and is connected to the automaticplayer musical instrument 20A through a wired channel or a radiochannel. The controller 11A transfers the audio signal and duration datacodes in an audio file through the communication module 13A to theautomatic player musical instrument 20A.

The control panel 15A includes a computer keyboard and a mouse. A usergives his or her instruction to the sound reproducer 10A through thecontrol panel 15A. The display panel 16A is, by way of example,implemented by a liquid crystal display panel, and controller 11Aproduces visual images on the display panel 16A. The user has dialogueswith the controller 11A through the control panel 15A and display panel16A.

The sound system 17A includes amplifiers, loud speakers and a headphone.When a user wishes simply to playback a music tune, the audio data codesare transferred from the audio file in the data storage 14A to the soundsystem 17A, and an audio signal is retrieved from the audio data codes.The audio signal is converted to the electric tones through theamplifiers and loud speakers.

On the other hand, when the user instructs the controller 11A toreproduce music tunes and narration in a program through the automaticplayer musical instrument 20A, the audio signal is transferred throughthe communication module 13A to the automatic player musical instrument20A, and the duration data codes are further transferred to theautomatic player musical instrument 20A for the synchronization betweenplayback and conversion from the audio data codes to the audio signal.

Automatic Player Musical Instrument

Turning to FIG. 24, the automatic player musical instrument 20A largelycomprises an acoustic piano (not shown), a code generating system (notshown), an automatic playing system 20Ac, communication modules 20Ad andan electronic tone producer 26A. Although the acoustic piano and codegenerating system are omitted from FIG. 24, the structure of acousticpiano and the system configuration of code generating system are similarto those shown in FIG. 2B. The components of automatic playing system20Ac are similar to those of the automatic playing system 20 c. For thisreason, the components of automatic playing system 20Ac are labeled withreferences designating the corresponding components of automatic playingsystem 20 c without detailed description.

Description is hereinafter made on the communication modules 20Ad andelectronic tone producer 26A. The communication modules 20Ad include acontroller 21, a clock 21 a, a data storage 22, a communication module23, a communication module 24 and a control panel 25. The communicationnetwork 40A is connected to the communication module 23, and theautomatic player musical instrument 20A communicates with the music datadistribution server computer 30A through the communication module 23under the supervision of the controller 21. The other communicationmodule 24 is implemented by an USB interface or a radio transmitter andreceiver, and is connected to the communication module 13A of soundreproducer 10A.

The controller 21 is implemented by an information processor, and acentral processing unit, peripheral processors, a program memory and aworking memory are incorporated in the information processing system.The information processor is shared between the controller 21 and theelectronic system 26 d. A computer program for the communication withexternal apparatus is stored in the program memory, and runs on thecentral processing unit so as to achieve the communication with themusic data distribution server computer 30A, reception of MIDI filesfrom the music data distribution server computer 30A, communication withthe sound reproducer 10A and reception of duration data codes and audiosignal from the sound reproducer 10A as will be hereinlater described indetail.

The clock 21 a is similar in circuit configuration to that of thecommunication modules 20 d, and a lapse of time is measured with theclock 21 a. The controller 21 periodically sets the clock 21 a with theduration data codes of an audio file so that the lapse of time on theclock 21 a is equal to the lapse of time from the audio data code at thehead of the audio file. The duration data codes of audio file aresupplied from the communication module 13A of sound reproducer 10A tothe communication module 24, and are transferred from the communicationmodule 24 to the controller 21.

The data storage 22 is, by way of example, implemented by a hard diskunit. When the program and MIDI files arrive at the communication module23, the controller 21 transfers the program and MIDI files to the datastorage 22, and the program and MIDI files are stored in the datastorage 22.

While the automatic playing system 20Ac is performing a music tune onthe acoustic piano (not shown) on the basis of the MIDI file alreadystored in the data storage 22, the controller 21 periodically checks theclock 21 a to see whether or not the time period expressed by theduration data code is expired. When the controller 21 finds that thetime period is expired, the controller 21 supplies the next event datacode or codes to the electronic system 26 d, and the electronic system26 d selectively supplies the driving signals to the solenoid-operatedactuators 26 a so as to depress and release the black keys, white keysand pedal mechanism. Thus, the time intervals are measured withreference to the clock 21 a so as to drive the acoustic piano (notshown) well in synchronism with the conversion from the audio data codesin the audio file to the audio signal.

The electronic tone producer 26A includes an electronic tone generator26 e, a mixer 26 f, an amplifier 26 g and loudspeakers 26 h. Theelectronic tone generator 26 e, mixer 26 f, amplifier 26 g andloudspeakers 26 h are same as those of the electronic tone producer 26.For this reason, no further description on those components 26 e, 26 f,26 g and 26 h is not incorporated for the sake of simplicity.

The controller 21 is connected to the mixer 26 f, and the audio signal,which is produced from the audio data codes in an audio file, istransferred to the mixer 26 f on the condition that neither audio signalnor driving signals is supplied from the tone generator 26 e andelectronic system 26 d to the mixer 26 f and solenoid-operated actuators26 a. Thus, the controller 21 interrupts the audio signal during theplayback of a music tune on the basis of the music data codes in a MIDIfile.

Behavior of Music Reproducing System Acquisition of Audio File

First, the sound reproducer 10A behaves until storing an audio file inthe data storage 14A as follows. FIG. 25 shows a communication sequencebetween the sound reproducer 10A and the music data distribution servercomputer 30A. The computer program 33Ac for music data distribution hasbeen already running on the controller 31A of the music datadistribution server computer 30A.

A user is assumed to wish to download an audio file for a program. Theuser gives an instruction to communicate with the data distributionserver computer 30A to the sound reproducer 10A through the controlpanel 15A. Then, the controller 11A acknowledges user's instruction asindicated by S1A, and makes the www browser to run on the controller11A. The controller 11A designates the URL address indicative of thememory location assigned a menu, i.e., a list of programs, and sends arequest for downloading the menu, i.e., an http request from thecommunication module 12A to the communication module 32A of the datadistribution server computer 30A as indicated by S2A.

Upon reception of the request, the music data distribution servercomputer 30A reads out the visual data expressing the menu from the datastorage 33A as indicated by S3A, and transmits the visual data as anhttp response to the sound reproducer 10A as indicated by S4A.

The visual data expressing the menu arrives at the communication module12A. Then, the controller 11A produces the visual image of menu on thedisplay panel 16A as indicated by S5A. FIG. 26 shows the visual image ofmenu produced on the display panel 16A. Program names “Piano fan”,“Piano tunes No. 1” and “Piano tunes No. 2” take place under a promptmessage “Place the mark in the box on the left side of your favoriteprogram, and push “download””. The programs are followed byrecommendation to users. Though not shown in the display panel 16A, theURL addresses are added to the program names by means of the anchor tagof HTML.

The user selects a program from the menu, and places the mark in the boxon the left side of the program name by means of a pointer. When theuser clicks the image of button “Download”, the controller 11Aacknowledges the user's selection of program as indicated by S6A, andtransmits the request, which contains the URL address, from thecommunication module 12A to the communication module 32A of the musicdata distribution server computer 30A as by S7A. When the user does notfind any favorite program, he or she clicks the image of button “Next”.Then, other programs are displayed.

Upon reception of the request, the controller 31A accesses the audiofile at the URL address, and reads out the audio file corresponding tothe program name from the data storage 33A as indicated by S8A. Thecontroller 31A transmits the audio file from the communication module32A to the communication module 12A as indicated by S8A.

The audio file arrives at the communication module 12A. Then, thecontroller 11A transfers the audio file to the data storage 14A, andstores the audio file in the data storage 14A as indicated by S10A.Thus, the download is accomplished.

Playback Only Through the Sound Reproducer

The user is assumed to instruct the controller 11A the playback throughthe sound system 17A. In other words, any collaboration is notrequested. The audio playback program starts to run on the controller11A. The controller 11A reads out the program names of audio filesalready stored in the data storage 14A, and produces a list of programname on the display panel 16A together with a prompt message “Select aprogram to be reproduced” as shown in FIG. 27.

Since three audio files “Piano fan!”, “Complete collection No. 1 ofpiano concertos” and “Best pianos” are stored in the data storage 14A,the program names of audio files are produced on the display panel 16A.Each of the program names is followed by box “Solo” and box“Collaboration”. The user moves the cursor into the box “Solo” or“Collaboration”, and clicks it. The user is assumed to select theprogram “Piano fan!”, and clicks the box “Solo”. The controller 11Astarts to transfer the audio data codes in the audio file “Piano fan!”to the sound system 17A, and are converted to the audio signal. As shownin FIG. 21, the audio file “Piano fan!” is labeled with the programidentifier “CID 001”, and contains “narration 1”, “music tune 1”,“narration 2”, “music tune 2, “music tune 3”, “narration 3” and “musictune 4” as shown in FIG. 19. Therefore, the audio signal is converted tothe narration and music tunes in the order shown in FIG. 19 regardlessof the absence of MIDI file for the music tune 4.

Playback of Program in Collaboration

FIG. 28 shows a communication sequence among the sound reproducer 10A,automatic player musical instrument 20A and music data distributionserver computer 30A. The user establishes a communication channelbetween the communication module 13A of sound reproducer 10A and thecommunication module 24 of automatic player musical instrument 20A asindicated by S11A, and gives the sound reproducer 10A an instruction forplayback. The audio playback program starts to run on the controller11A, and produces the picture shown in FIG. 26 on the display panel 16A.

The user is assumed to click the button of mouse at the box on the leftside of “Piano fan!” and the box labeled with “Collaboration”. Then, thecontroller 11A acknowledges the user's instruction for playback asindicated by S12A. The controller 11A accesses the FAT, and reads outthe file identifier, which includes the pieces of data informationexpressing the file name “piano-fan.wab”, file size “41.5 mega-bytes”and creation date “2006/1/25” from the FAT. The controller 11A transmitsthe file identifier from the communication module 13A to thecommunication module 24 of the automatic player musical instrument 20Aas indicated by S13A.

Upon reception of the file identifier, the controller 21 transmits thefile identifier from the communication module 23 to the music datadistribution sever computer 30A as indicated by S14A.

When the file identifier arrives at the communication module 32A, thecontroller 31A accesses the program management table 33 a shown in FIG.21, and determines the program identifier “CID001” as indicated by S15A.The controller 31A searches the data storage 33A for the program labeledwith the program identifier “CID001”, and reads out the program from thedata storage 33A as indicated by S16A. The controller 31A transmits theread-out program 33 b from the communication module 32A to thecommunication module 23 of the automatic player musical instrument 20Aas indicated by S17A.

The program 33 b arrives at the communication module 23. Then, thecontroller 21 searches the data storage 22 for the program labeled withthe program name to see whether or not the MIDI files of the program 33b have been already stored in the data storage 22 as indicated by S18A.As shown in FIG. 22, the program contains the MIDI files“piano-fan001.mid”, “piano-fan002.mid” and “piano-fan003.mid”. Only theMIDI files “piano-fan002.mid” and “piano-fan003.mid” are assumed to bestored in the data storage 22. In other words, the MIDI file“piano-fan001.mid” is not found in the data storage 22. The controller21 transmits a http request, which contains the URL address“http://www.abc.co.jp/CID001/piano-fan001.mid”, from the communicationmodule 23 to the communication module 32A as indicated by S19A.

The hppt request is received by the communication module 32A. Then, thecontroller 31A reads out the MIDI file “piano-fan001.mid”, which islabeled with the URL address“http://www.abc.co.jp/CID001/piano-fan001.mid”, from the data storage33A, and transmits the MIDI file from the communication module 32A tothe communication module 23 as an http response. Thus, the MIDI filesare downloaded to the automatic player musical instrument 20A asindicated by S20A.

The controller 21 may ask the user whether or not the user wish todownload the MIDI file “piano-fan001.mid” through the display panel 16A.In this instance, when the user instructs the controller 21 to downloadthe MIDI file “piano-fan001.mid”, the controller 21 requests the musicdata distribution server computer 30A to transmit the MIDI file“piano-fan001.mid”. On the other hand, if the user gives the negativeanswer to the controller 21, the controller 21 does not transmits therequest to the music data distribution server computer 30A, andtransmits the notice of ready-state to the sound reproducer 10A as willbe hereinlater described in conjunction with a job at S22A.

When the MIDI file “piano-fan001.mid” arrives at the communicationmodule 23, the controller 21 transfers the MIDI file from thecommunication module 23 to the data storage 22, and stores the MIDIfiles in the data storage 22 as indicated by S21A.

When the MIDI files are prepared in the data storage 22, the controller21 gets ready to perform the music tunes 1 to 3. The controller 21 sendsa notice of ready-state from the communication module 24 to thecommunication module 13A of sound reproducer 10A as indicated by S22A.

Upon reception of the notice of ready-state, the controller 11A producesa picture shown in FIG. 29 on the display panel 16A so as to inform theuser of the ready-state, and asks for permission. The user is assumed toclick the button of mouse at box “Yes”. Then, the controller 11A sends anotice of initiation from the communication module 13A to thecommunication module 24 as indicated by S23S.

The sound reproducer 10 starts the conversion from the audio data codesto the audio signal as indicated by S24A. The automatic player musicalinstrument 20A starts the playback on the basis of the music data codesof MIDI file as indicated by S25A, and starts to measure the lapse oftime with the clock 21 a. The audio signal and duration data codes aretransmitted from the communication module 13A to the communicationmodule 24 as indicated by S26A.

FIG. 30 shows a job sequence realized through execution of the computerprogram installed in the controller 21 and electronic system 26 d. Asshown in FIG. 22, the program contains the playback schedule. The firstmusic tune starts at 1′16″, and is terminated at 5′48″. The second musictune starts at 6′29″, and is terminated at 14′00″. “Narration 1” is tobe reproduced before the first music tune, and “narration 2” is insertedbetween the first music tune and the second music tune as shown in FIG.19.

The controller 21 checks the clock 21 a to see whether or not the timeto playback the first music tune comes as by step S101A. The answer atstep S101 is given negative “No” from the initiation of playback to1′16″, and the controller 21 transfers the audio signal from thecommunication module 24 to the mixer 26 f as by step S102A. For thisreason, the narration 1 is reproduced.

The answer at step S101A is changed to affirmative “Yes” at 1′16″. Then,the controller 21 checks the data storage 22 to see whether or not theMIDI file has been prepared for the music tune to be reproduced as bystep S103A. The MIDI file for the music tune 1 has bee downloaded fromthe music data distribution server computer 30A as indicated by S20A inFIG. 28. For this reason, the answer at step S103A is given affirmative“Yes”. With the positive answer “Yes” at step S103A, the controller 21supplies the first key event data code or codes from the data storage 22to the electronic system 26 d, and mutes the electric tones to beproduced from the audio signal as by step S104A. Thus, the controller 21blocks the mixer 26 f from the audio signal converted from the audiodata codes. Any electric tone is not reproduced from the audio signal.

The user has two options, i.e., the automatic playing system 20Ac andelectronic tone producer 26A. If the user selects the automatic playingsystem 20Ac, the black keys, white keys and pedal mechanism areselectively driven by the solenoid-operated actuators 26 a, and theacoustic piano tones are produced through the acoustic piano (notshown). On the other hand, when the user selects the electronic toneproducer 26A, the music data code or codes are transferred to theelectronic tone generator 26 e. The audio signal is produced on thebasis of the music data code or codes, and is supplied through the mixer26 f and amplifier 26 g to the loudspeakers 26 h. The audio signal isconverted to the electric tones along the music passage of the firstmusic tune.

Subsequently, the controller 21 checks the clock 21 a to see whether ornot the time to terminate the playback comes as by step S105A. Theanswer at step S105A is given negative “No” until 5′48″, and thecontroller returns to step S104A. The controller 21 checks the clock 21a to see whether or not the time period between the key event and thenext key event is expired. While the answer is being given negative“No”, the controller 21 continuously sets the clock 21 a with theduration data codes of the audio file. When the time period is expired,the controller 21 transfers the next event data code or codes to theelectronic system 26 d for producing the acoustic piano tone orelectronic tone.

The controller 21 reiterates the loop consisting of steps S104A to stepS105A until 5′48″. When the answer at step S105A is changed toaffirmative “Yes”, the controller 21 restarts to supply the audio signalto the mixer 26 f, and the narration 2 is reproduced. The audio signalis changed to the supply of event data codes at 6′29″, and the secondmusic tune is reproduced through the automatic player musical instrument20 until 14′00″. The third music tune starts at 14′13″ without anynarration, and is terminated at 24′13″. The third music tune is followedby the narration 3 reproduced from the audio signal.

When the clock 21 a is indicative of 25′20″, the controller 21 checksthe data storage 22 to see whether or not the MIDI file has beenprepared for the fourth music tune at Sl03A. As described hereinbefore,the music data distribution server computer 30A does not have the MIDIfile “piano-fan004.mid” in the data storage 33A, and, accordingly, theMIDI file “piano-fan004.mid” is not prepared for the playback. In thissituation, the answer at step S103A is given negative “No”, and thecontroller 21 supplies the audio signal to the mixer 26 f. As a result,the electric tones are reproduced from the audio signal as similar tothe narration 1, 2 and 3.

When all the contents of program are reproduced, the sound reproducer10A terminates the data processing as indicated by S27A, and sends anotice of termination to the automatic playing musical instrument 20A asindicated by S28A. Upon reception of the notice of termination, theautomatic playing musical instrument 20A also terminates the dataprocessing as indicated by S29A.

As will be understood from the foregoing description, the programs arereproduced in collaboration between the sound reproducer 10A and theautomatic player musical instrument 20A as similar to those in thedescription on the first embodiment. The audience feels the reproductionof program in collaboration between the sound reproducer 10A andautomatic player musical instrument 20A close to the performance in alive concert.

Moreover, even if a MIDI file or MIDI files in the program are notpre-pared for the playback through the automatic player musicalinstrument 20A, the music tune or tunes are reproduced from the audiodata codes in the audio file instead of the music data codes in the MIDIfile. Thus, all the contents of program are reproduced regardless of theabsence of a MIDI file or files expressing a music tune or tunes in theprogram.

Modifications of Second Embodiment

In the following description on the modifications, system components ofthe modifications are labeled with references designating thecorresponding system components of music reproducing system 100A withoutdetailed description for the sake of avoiding repetition.

First Modification

The first modification of music reproducing system 100A is differentfrom the second embodiment in that only the start time is specified inthe program 33Ab. This is because of the fact that the time period forthe playback, i.e., the amount of music data is defined in the MIDIfile. In other words, the termination time is determinable through theaddition of the playback time period to the start time.

Second Modification

The second modification of music reproducing system 100A is differentfrom the second embodiment in that the electric voice and electric tonesare produced through the sound system 17A. Although the audio signal isnot supplied to the automatic player musical instrument 20A, theduration time codes in the audio file are transmitted from thecommunication module 13A to the communication module 24. The controller21 makes the data transfer to the electronic system 26 d synchronizedwith the conversion of audio data codes to the audio signal as describedhereinbefore.

The audio signal may be converted to the electric tones and electricvoice through both of the sound system 17A and electronic tone producer26A.

Third Modification

The third modification of music reproducing system 100A is differentfrom the second embodiment in that the music data codes of a MIDI fileexpresses tones in one of the plural parts of a piece of music tuneexpressed by the audio data codes in an audio file. In detail, the musictune is assumed to be constituted by a vocal part, a guitar part and apiano part. The audio data codes of the MIDI file express only the tonesof piano part. While the piano part is being reproduced through theautomatic player musical instrument 20A, the electric tones of pianopart are muted, and the audio signal expresses the other parts, i.e.,the vocal part and guitar part. The playback through the automaticplayer piano 20A is synchronized with the conversion from the audio datacodes to the audio signal so that the music tune is reproduced in goodensemble between the sound reproducer 10A and the automatic playermusical instrument 20A.

Fourth Modification

The fourth modification of music reproducing system 100A is differentfrom the second embodiment in that the sound reproducer 10A stops theaudio signal.

In detail, when controller 21 finds that the internal clock 21 a pointsthe start time to reproduce the music tune on the basis of the musicdata codes, the controller 21 starts to transmit the request for mutingor minimizing the volume to zero from the communication module 24 to thecommunication module 13A, and starts to transfer the music data codesfrom the data storage 22 to the electronic system 26 d. The controller21 continuously transmits the request to the sound reproducer 10A duringthe playback on the basis of the music data codes, and the soundreproducer 10A does not permit the audio signal to arrive thecommunication module 13. Otherwise, the sound reproducer minimizes thevolume to zero. As a result, the electric tones are not radiated fromthe loudspeakers 26 h.

Otherwise, the controller 21 causes the program 33Ab to be transmittedfrom the communication module 24 to the communication module 13A, andthe program 33Ab is stored in the data storage 14A. While the contentsof program 33Ab are sequentially being reproduced, the controller 11Achecks the playback schedule to see whether or not a music tune is to bereproduced through the automatic player musical instrument 20A. When thestart time comes, the controller 11A blocks the communication module 13Afrom the audio signal, or minimizes the volume to zero. The controller11A keeps the muting or minimization until the termination time.

Fifth Modification

The fifth modification of music reproducing system 100A is differentfrom the second embodiment in that the controller 11A checks the deviceidentification code to see whether or not the automatic player musicalinstrument 20A is connected to the communication module 13A. The deviceidentification codes are exchanged between the sound reproducer 10A andthe external device when the external device is connected to thecommunication module 13A. When the controller 11A confirms that theautomatic player musical instrument 20A is connected to thecommunication module 13A, the controller 11A does not transmit the audiosignal to the automatic player musical instrument 20A during theplayback on the basis of the MIDI files. On the other hand, if anothersort of device is connected to the communication module 13A, thecontroller 11A permits the audio signal to be transmitted to theexternal device.

Sixth Modification

The sixth modification of music reproducing system 100A is differentfrom the second embodiment in that the controller 21 keeps theelectronic tone producer 26A or sound system 17A silent prior to theplayback on the basis of the MIDI files. For example, the controller 21prohibits the electronic tone producer 26A or sound system 17A fromconversion to the electric voice or electric sound in a short timeperiod before entry into the playback on the basis of the MIDI files.The short time period may be 0.5 second. Even if the time period forreproducing the audio signal from the audio data codes is partiallyoverlapped with the time period for the playback on the basis of theMIDI file, the electronic tones or acoustic piano tones are not producedconcurrently with the electric voice or electric sound in so far as theoverlapped time period is fallen within the short time period.

Seventh Modification

The seventh modification is different from the music reproducing system100A in that the playback on the basis of the MIDI file is madesynchronous with the conversion from the audio data codes to the audiosignal through the synchronization technique disclosed in Japan PatentApplication laid-open No. 2003-271138 or the synchronization techniquedisclosed in Japan Patent Application laid-open No. 2006-47761.

The synchronization technique disclosed in the former laid-open is thatunique peaks of an audio signal are correlated with music data codes ina table. The controller checks the table to see whether or not the musicdata codes are processed concurrently with the unique peaks. When theanswer is given negative, the controller advances the internal clock orputs the internal clock slow. Since the time intervals between the keyevents are measured with the internal clock, the two apparatus aresynchronized with one another.

The synchronization technique disclosed in the latter laid-open is thatthe synchronization control is assigned to one of the plural channelsbetween two apparatus. While the audio data codes are being converted tothe audio signal, the controller of sound reproducer assigns the piecesof audio data to the channel L and LTC, which is a time code defined inthe SMTPE (Society of Motion Picture and Television Engineers) andcontains the pieces of time data and file identifier, to the channel R,and transmits the pieces of audio data and LTC to the automatic playermusical instrument through the channels L and R. The controller ofautomatic player musical instrument makes the internal clock set withthe pieces of time data contained in the LTC.

Eighth Modification

The eighth modification of the music reproducing system 100A isdifferent from the second embodiment in the communication from S14 toS21. In the second embodiment, only the MIDI files not found in the datastorage 22 are downloaded from the music data distribution servercomputer 30A. This feature is desirable from the viewpoint of reductionof load in downloading work. On the contrary, when the automatic playermusical instrument 20A transmits the file identifier to the music datadistribution server computer 30A, all of the MIDI music data files andprogram are concurrently downloaded from the music data distributionserver computer 30A to the automatic player musical instrument 20A.Thus, the communication is made simplified rather than the communicationin the first embodiment.

Ninth Modification

FIG. 31 illustrates the system configuration of the ninth modificationof the second embodiment. Although the audio files, programs and MIDIfiles are stored in the single music data distribution server computer30A in the second embodiment, the audio files and programs are stored ina server computer 30Aa different from the server computers 30Ab and 30Acwhere the MIDI files are stored.

When a user instructs the sound producer 10A to reproduce a program incollaboration with the automatic player musical instrument 20A, theprogram and audio files are firstly downloaded from the server computer30Aa to the sound reproducer 10A, and makes the automatic player musicalinstrument 20A to transmit a request for downloading the MIDI files atthe URL addresses in the program from the server computer 30Ab and/or30Ac to the automatic player musical instrument 20A.

It is not easy for the service provider to prepare a huge number ofaudio files and a huge number of MIDI file in the server computer. Inthe ninth modification, plural service providers bear the huge number offiles in the plural server computers 30Aa, 30Ab and 30Ac so that themusic reproducing system is easily established in the network. Thus, theservice providers can offer a large number of programs to users throughthe ninth modification of the music reproducing system.

The sound reproducer 10A and automatic player musical instrument 20A mayhave a unitary structure.

Tenth Modification

Tenth modification of the music reproducing system 100A has anaccounting system 50A. The accounting system 50A is, by way of example,implemented by various accounting networks such as the Japan BankNetwork and/or CAFIS (Credit And Finance Information System), and isconnected to the server computers 30Aa, 30Ab and 30Ac. When a userdownloads the programs, audio files and MIDI files, the serviceproviders write out bills, and settle accounts with the users throughthe accounting system 50A.

In detail, the audio files and MIDI files are priced, and areaccompanied with price lists in the data storages 33A of the servercomputers 30Aa, 30Ab and 30Ac. A user list is further stored in the datastorages 33A, and the users have been registered in the user list. Thename, address, birthday, user identifier, bank account number and creditcard number are written in the user list for each of the registeredusers.

When a user requests the server computer 30Aa, 30Ab or 30Ac for thedownload of an audio file, a program or a MIDI file, the controller 31Arequests the user to send the user identifier to the server computer30Aa, 30Ab or 30Ac, and transmits the program or file to the soundreproducer or automatic player musical instrument 20A after theconfirmation of the user.

Upon completion of the download, the controller 31A accesses the pricelist so as to write out a bill, and sends the bill to the account system50A for the settlement. If the user requests the service providers tosettle the accounts through the credit card system, the serviceproviders put the bill in the credit account. Thus, the bills areautomatically settled at the user's account number through theaccounting system 50A.

Eleventh Modification

The eleventh modification of music reproducing system 100A is differentfrom the second embodiment in that the automatic player musicalinstrument 20A can reproduce music tunes through in-stream playback onthe basis of MIDI files. In the in-stream playback, the music data codesare transmitted from the music data distribution server computer 30Athrough the communication network 40A, and the music tune is reproducedon the basis of the music data codes in a real time fashion. Otherwise,the MIDI file is stored in the random access memory, and is erased afterthe playback. For this reason, it is difficult to reuse the music datacodes after the in-stream playback.

A user can choose the playback method between the standard playbackafter the download and the in-stream playback. If the user chooses thestandard playback, the automatic player musical instrument 20A behavesas similar to that shown in FIG. 28. On the other hand, when the userchooses the in-stream playback, the music data codes are transmittedfrom the music data distribution server computer 30A to automatic playermusical instrument 20A, and are temporarily stored in the random accessmemory of the controller 21. The music data codes are timely transferredto the electronic system 26 d so as to produce the acoustic piano tonesor electronic tones on the basis of the event data codes.

In case where the fee-charging download is employed in the eleventhmodification, the in-stream playback is beneficial to users, because theprice of MIDI files for the in-stream playback is lower than the priceof MIDI files for the standard playback. Users may choose the standardplayback for music tunes out of the copyright, and choose the in-streamplayback for the copyrighted music tunes.

In order to respond to user's choice, the MIDI files are broken downinto two groups, the copyrighted music tunes, i.e., the first group andthe music tunes out of the copyright, i.e., the second group, and a tagindicative of the first group is added to the MIDI files in the firstgroup, and another tag indicative of the second group is added to theMIDI files in the second group.

A user is assumed to reproduce the contents of a program. The programcontains copyrighted music tunes and music tunes out of the copyright.In this situation, the MIDI files in the second group are downloadedinto the data storage 22. However, the MIDI files in the first groupsare not downloaded.

While the automatic player music instrument 20A is collaborating withthe sound reproducer 10A, the music tunes out of the copyright arereproduced on the basis of the music data codes in the MIDI files storedin the data storage 22 between the start time and the termination timedesignated in the program, and the controller 21 requests the music datadistribution server computer 30A to transmit the music data codesexpressing the copyrighted music tunes to the communication module 23before the start time so as to permit the electronic system 26 d tostart the playback at the start time. Upon completion of thereproduction of contents of program, the music data codes in the randomaccess memory are erased.

Thus, the service provider can restrict the reuse of the MIDI filethrough the in-stream playback, and offer the program contents at lowprice.

Twelfth Modification

The twelfth modification of music reproducing system 100A is differentfrom the second embodiment in that only one of the sound reproducer 10Aand automatic player musical instrument 20A has the communicationcapability with the music data distribution server computer 30A.

Only the sound reproducer 10A is assumed to have the communicationcapability. The automatic player musical instrument 20A acquires aprogram and MIDI files from the music data distribution server computer30A through the sound reproducer 10A.

In detail, the automatic player musical instrument 20A requests thesound reproducer 10A for the acquisition of program and MIDI filesthrough the communication channel 40 c, and the program and MIDI filesare downloaded from the communication module 32A to the communicationmodule 12A. The controller 11A transfers the program and MIDI files fromthe communication module 13A to the communication module 24 through thecommunication channel 40 c.

Thus, the automatic player musical instrument 20A or sound reproducer10A of the twelfth modification is simpler than that of the musicreproducing system 100A.

Thirteenth Modification

The thirteenth modification of music reproducing system 100A isdifferent from the second embodiment in that either file size orcreation date is omitted from the file identifier. The data structure offile identifier shown in FIG. 21 does not set any limit to the technicalscope of the present invention. A serial number may serve as anotherfile identifier.

Fourteenth Modification

The fourteenth modification of music reproducing system 100A isdifferent from the second embodiment in that either audio files, programor MIDI files are read out from a portable information storage mediumsuch as, for example, a compact disc, a flexible disc, an MD, an audiocassette tape or a record disc. The other materials are downloaded fromthe music data distribution server computer 30A through thecommunication network 40A.

Fifteenth Modification

The fifteenth modification of music reproducing system 100A is differentfrom the second embodiment in that the MIDI file or files are downloadedafter the initiation of reproduction of a program. Of course, each MIDIfile is required for the automatic player musical instrument 20A beforethe start time.

The audio file shown in FIG. 19 does not set any limit to the technicalscope of the present invention. An audio file may contain only musictunes.

Sixteenth Modification

The sixteenth modification of music reproducing system 100A is differentfrom the second embodiment in that another sort of electronic deviceserves as the sound reproducer 10A. The personal computer may bereplaced with a mobile telephone, a PHS (Personal Handy phone System)terminal, a PDA (Personal Digital Assistants) or a portable musicplayer.

The computer programs for the controllers 11A, 21 and 31A may be offeredto users independently of the hardware. One or two of the computerprograms or all of the computer programs may be stored in a magnetictape cassette, a magnetic disc, a flexible disc, an optical informationstorage medium, an opto-magnetic information storage medium, a compactdisc, a DVD disc or a RAM stick.

Third Embodiment

In the first and second embodiments, the playback follows the programsalready prepared for the sound reproducer 10/10A and automatic playermusical instrument 20/20A. A program producer is incorporated in themusic reproducing system of the third embodiment, and users prepareprograms through the program producer.

Referring first to FIG. 32 of the drawings, yet another musicreproducing system 100B embodying the present invention largelycomprises sound reproducers 10B and 10C, automatic player musicalinstruments 20B and 20C, a music data distribution server computer 30Band a communication network 40B. Although two sound reproducers 10B/10Cand two automatic player musical instruments 20B/20C are shown in FIG.32, other sound reproducers and other automatic player musicalinstruments are further incorporated in the music reproducing system100B.

The sound reproducers 10B and 10C, automatic player musical instruments20B and 20C and music data distribution server computer 30B areconnected to the communication network 40B through wire communicationchannels or a radio communication channels, and communicate with oneanother through the communication network 40B. The sound reproducers 10Band 10C are respectively associated with the automatic player musicalinstruments 20B and 20C, and are further connected to the automaticplayer musical instruments 20B and 20C through wire communicationchannel or radio communication channels 40Bb and 40Bc. Thus, the soundreproducers 10B and 10C are directly communicable with the automaticplayer musical instruments 20B and 20C through the wire communicationchannel/radio communication channels 40Bb and 40Bc, respectively. Inthis instance, the sound reproducers 10B/10C collaborate with theassociated automatic player musical instruments 20B/20C for reproducingprograms.

Each of the sound reproducers 10B and 10C is, by way of example,implemented by a personal computer system, and an audio playbackcomputer program is installed in the personal computer system so as toconvert pieces of audio data or audio data codes to electric tones,electric voice and/or electric sound. The audio data codes expressdiscrete values on the waveform of an audio signal representative of thetones, voice and/or sound.

An editorial picture is downloaded from the music data distributionserver computer 30B to the sound producer 10B/10C for preparing newprograms. While the editorial picture is being reproduced, users preparenew programs such as new music programs as will be hereinlater describedin detail. The new programs are uploaded to the music data distributionserver computer 30B through the communication network 40B.

Each of the automatic player musical instruments 20B and 20C is acombination between an acoustic piano an automatic playing system, andthe automatic playing system performs a music tune on the acoustic pianowithout any fingering of a human player. As will be describedhereinlater, the automatic player musical instrument 20B/20C furtherincludes an electronic tone producer, and electronic tones are producedon the basis of the music data codes by means of the electronic toneproducer. Thus, users have a choice between the acoustic piano tones andthe electronic tones.

The music data distribution server computer 30B is put on the WWWtogether with the sound reproducers 10B/10C and automatic player musicalinstruments 20B/20C. Thus, the music data distribution server computer30B, sound reproducers 10B/10C and automatic player musical instruments20B/20C form a client-server system through the communication network40B.

The communication network 40B includes various sorts of networks such asthe internet, telephone networks and so forth. The MIDI files, programsand audio files are distributed from the music data distribution servercomputer 30B to the sound reproducers 10B/10C and automatic playermusical instruments 20B/20C through the communication network 40B.

The programs are prepared for reproduction through the sound reproducer10B/10C and associated automatic player musical instrument 20B/20C incollaboration with one another. At least one music tune is contained inthe program together with narration and/or talk, and is expressed by theaudio data codes in an audio file as well as the music data codes in aMIDI file.

Music Data Distribution Server Computer

FIG. 33 illustrates the circuit configuration of the data distributionserver computer 30B. The data distribution server computer 30B includesa controller 31B, a communication module 32B and a data storage 333B,and the controller 31B, communication module 32B and data storage 33Bare connected to one another through an internal bus system 34B.

Though not shown in the drawings, the controller 31B includes a centralprocessing unit, peripheral processors, a program memory and a workingmemory, and computer programs 33Bc selectively run on the centralprocessing unit of controller 31B so as to achieve various tasks such asa data management, analysis of requests of clients, a file transmission,completion of new programs and so forth. The communication module 32B isconnected to the communication network 40B. The client requests arereceived at the communication module 32B, and programs, audio files andMIDI files are transmitted from the communication module 32B to thesound reproducers 10B/10C and automatic player musical instruments20B/20C.

The data storage 33B is, by way of example, implemented by a hard diskunit or hard disk units, and the storage space in the hard disk or disksare assigned to a program management table 33 a, programs 33Bb, computerprograms 33Bc, audio files 33Bd, MIDI files 33 e and authenticationdata. An editorial computer program and a communication computer programare examples of the computer programs 33Bc, and composite audio filesand individual audio files are referred to as “audio files 33Bd”. Eachof the individual audio files expresses a music tune. On the other hand,each of the composite audio files contains plural parts expressingsilence and narration, talk and/or sound as will be describedhereinlater in detail. The contents of composite audio file andassociated MIDI files are reproduced in collaboration between the soundreproducer 10B/10C and the associated automatic player musicalinstrument 20B/20C.

Each piece of authentication data expresses a user who has alreadygotten an onerous contract with the service provider, and the serviceprovider assigns a character string to the user. An identification codeand a password may be expressed by the character string, and the userhas determined the password. As will be hereinlater described, certaincomposite audio files and certain MIDI files are copyrighted, and suchcopyrighted works are distributed to the users under the onerouscontract.

Relation between file identifiers and composite audio files is definedin the program management table 33 a, and relation between the contentsof a composite audio file and playback schedule is defiled in theprogram.

FIG. 34 shows the data structure of a composite audio file and relationbetween the composite audio file and the MIDI files to be reproduced ina program. The composite audio file contains the audio data codes andduration data codes. The duration data codes express a lapse of timefrom the first audio data code at the head of the composite audio file.On the other hand, discrete values are sampled from the waveform of ananalog audio signal at 44.1 kilo-hertz, and are stored in the audio datacodes.

The series of audio data codes in the composite audio file expressesplural contents such as, for example, narration and silence. A narratormay give his or her impression of music tunes 1, 2, 3 and 4 before theplayback of music tunes as “narration 1”, “narration 2” and “narration3”. The narration is followed by the playback on the basis of MIDI filesexpressing the music tunes. The narration is split into three parts“narration 1”, “narration 2” and “narration 3”, and the audio data codesexpressing the silence are inserted between the narration 1 and thenarration 2, between the narration 2 and the narration 3 and after thenarration 3. While the music tunes are being reproduced, the audio datacodes express the silence.

A user is assumed to instruct the sound reproducer 10B/10C andassociated automatic player musical instrument 20B/20C to reproduce theprogram shown in FIG. 34. The audio data codes are continuouslyconverted to the audio signal through the sound reproducer 10B/10C, andthe music tunes 1, 2, 3 and 4 are reproduced on the basis of the MIDIfiles 1, 2, 3 and 4 through the automatic player musical instrument20B/20C between the narration 1 and the narration 2, between thenarration 2 and the narration 3 and after the narration 3. As a result,the contents of program are reproduced in the order of the narration 1,music tune 1, narration 2, music tunes 2 and 3, narration 3 and musictune 4.

In order to make the reproduction of narration synchronized with theplayback of music tunes 1, 2, 3 and 4, the duration data codes aresupplied from the sound reproducer 10B/10C to the associated automaticplayer musical instrument 20B/20C as will be described hereinlater indetail.

Turning to FIG. 35, a MIDI file is broken down into a header chunk HCand a track chunk TC. Pieces of attribute data are stored in the headerchunk for the MIDI file, and the event data codes and duration datacodes are stored in the track chunk TC. Although the duration data codesof audio file express a lapse of time from the audio data code at thehead of audio file, each of the duration data codes of MIDI fileexpresses a lapse of time between a key event and the next key event.

FIG. 36 illustrates the contents of the program management table 33 a.The file identifier is broken down into an audio file name, a file sizeand a creation date. The composite audio file is identified with theaudio file name. The file size expresses the number of bytes occupied bythe composite audio file, and the creation date is indicative of theyear, month and day at which the audio file is created. For example, anaudio file is labeled with the audio file name “piano-fan.wab”. 41.5mega-bytes are required for the audio file named as “piano-fan.wab”, andthe audio file is created in Jan. 25, 2006. The audio file named as“piano-fan.wab” is correlated with the program labeled with the programidentifier “CID 001”.

FIG. 37 illustrates the contents of the program labeled with the programidentifier “CID 001”. The program labeled with the program identifier“CID 001” is correlated with a playback schedule, URL addresses of MIDIfiles and MIDI file names in the program. Start time at which theplayback starts and termination time at which the playback is completedare written in the playback schedule for each of the MIDI files. Forexample, the playback from the MIDI file “piano-fan001.mid” starts at 1min. and 16 sec, and the playback is completed at 5 min. and 48 sec, andthe MIDI file is stored at the memory location assigned the URL address“http://www.abc.Co.jp/CID001/piano-fan001.mid”.

Sound Reproducer

FIG. 38 shows the system configuration of sound reproducer 10B/10C. Thesound reproducer 10B/10C includes a controller 11B, communicationmodules 12B and 13B, a data storage 14B, a control panel 15B, a displaypanel 16B and a sound system 17B. The controller 11B, communicationmodules 12B and 13B, data storage 14B, control panel 15B, display panel16B and sound system 17B are connected to an internal bus system 10Ba sothat the controller 11B is communicable with the other system components12B, 13B, 14B, 15B, 16B and 17B through the internal bus system 10Ba.

The controller 11B is implemented by an information processor, and acentral processing unit, peripheral processors, a program memory and aworking memory are incorporated in the information processor.Application programs such as www browser 14 a, an audio playback program14 b and a supporting computer program for editorial works 14Bb arestored in the data storage 14B together with an FTA and the audio files14Bc, i.e., the composite audio files and individual audio files. Theapplication programs selectively run on the central processing unit. Theuser prepares a new program with the assistance of the supportingcomputer program. The editorial computer program, controller 31B,supporting computer program, www browser and controller 11B as a wholeconstitute the program producer.

The individual audio files are transferred from a portable informationstorage medium such as, for example, a magnetic tape cassette, amagnetic disk, a flexible disk, a compact disc or a DVD disc by theuser.

The communication module 12B is connected to the communication network40B. While the www browser is running on the central processing unit,the sound reproducer 10B/10C communicates with the music datadistribution server computer 30B. The composite program is uploaded tothe music data distribution server computer 30B, and the programs andcomposite audio files are downloaded to the data storage 14B.

The other communication module 13B is implemented by an USB interface ora radio transmitter and receiver, and is connected to the associatedautomatic player musical instrument 20B/20C through a wired channel or aradio channel. The controller 11B transfers the audio signal andduration data codes in a composite audio file through the communicationmodule 13B to the associated automatic player musical instrument20B/20C.

The control panel 15B includes a computer keyboard and a mouse. A usergives his or her instruction to the sound reproducer 10B through thecontrol panel 15B. The display panel 16B is, by way of example,implemented by a liquid crystal display panel, and controller 11Bproduces visual images on the display panel 16B. The user has dialogueswith the controller 11B through the control panel 15B and display panel16B.

The sound system 17B includes amplifiers, loud speakers and a headphone.When a user wishes simply to playback a music tune, the audio data codesare transferred from the audio file in the data storage 14B to the soundsystem 17B, and an audio signal is retrieved from the audio data codes.The audio signal is converted to the electric tones through theamplifiers and loud speakers.

On the other hand, when the user instructs the controller 11B toreproduce music tunes and narration in a program through the associatedautomatic player musical instrument 20B, the audio signal is transferredthrough the communication module 13B to the automatic player musicalinstrument 20B/20C, and the duration data codes are further transferredto the automatic player musical instrument 20B/20C for thesynchronization between playback and conversion from the audio datacodes to the audio signal.

Automatic Player Musical Instrument

Turning to FIG. 39, the automatic player musical instrument 20B/20Clargely comprises an acoustic piano (not shown), a code generatingsystem (not shown), an automatic playing system 20Bc, communicationmodules 20Bd and an electronic tone producer 26B. Although the acousticpiano and code generating system are omitted from FIG. 39, the structureof acoustic piano and the system configuration of code generating systemare similar to those shown in FIG. 2B. The components of automaticplaying system 20Bc are similar to those of the automatic playing system20 c. For this reason, the components of automatic playing system 20Bcare labeled with references designating the corresponding components ofautomatic playing system 20 c without detailed description.

Description is hereinafter made on the communication modules 20Bd andelectronic tone producer 26B. The communication modules 20Bd include acontroller 21, a clock 21 a, a data storage 22B, a communication module23, a communication module 24 and a control panel 25. The communicationnetwork 40B is connected to the communication module 23, and theautomatic player musical instrument 20B/20C communicates with the musicdata distribution server computer 30B through the communication module23 under the supervision of the controller 21. The other communicationmodule 24 is implemented by an USB interface or a radio transmitter andreceiver, and is connected to the communication module 13B of soundreproducer 10B/10C.

The controller 21 is implemented by an information processor, and acentral processing unit, peripheral processors, a program memory and aworking memory are incorporated in the information processing system.The information processor is shared between the controller 21 and theelectronic system 26 d. A computer program for the communication withexternal apparatus is stored in the program memory, and runs on thecentral processing unit so as to achieve the communication with themusic data distribution server computer 30B, reception of MIDI filesfrom the music data distribution server computer 30B, communication withthe sound reproducer 10B/10C and reception of duration data codes andaudio signal from the sound reproducer 10B/10C as will be hereinlaterdescribed in detail.

The clock 21 a is similar in circuit configuration to that of thecommunication modules 20 d, and a lapse of time is measured with theclock 21 a. The controller 21 periodically sets the clock 21 a with theduration data codes of an audio file so that the lapse of time on theclock 21 a is equal to the lapse of time from the audio data code at thehead of the audio file. The duration data codes of audio file aresupplied from the communication module 13B of sound reproducer 10B/10Cto the communication module 24, and are transferred from thecommunication module 24 to the controller 21.

The data storage 22B is, by way of example, implemented by a hard diskunit. When the program and MIDI files arrive at the communication module23, the controller 21 transfers the program and MIDI files to the datastorage 22, and the program and MIDI files are stored in the datastorage 22B.

While the automatic playing system 20Bc is performing a music tune onthe acoustic piano (not shown) on the basis of the MIDI file alreadystored in the data storage 22B, the controller 21 periodically checksthe clock 21 a to see whether or not the time period expressed by theduration data code is expired. When the controller 21 finds that thetime period is expired, the controller 21 supplies the next event datacode or codes to the electronic system 26 d, and the electronic system26 d selectively supplies the driving signals to the solenoid-operatedactuators 26 a so as to depress and release the black keys, white keysand pedal mechanism. Thus, the time intervals are measured withreference to the clock 21 a so as to drive the acoustic piano (notshown) well in synchronism with the conversion from the audio data codesin the audio file to the audio signal.

The electronic tone producer 26B includes an electronic tone generator26 e, a mixer 26 f, an amplifier 26 g and loudspeakers 26 h. Theelectronic tone generator 26 e, mixer 26 f, amplifier 26 g andloudspeakers 26 h are same as those of the electronic tone producer 26.For this reason no further description on those components 26 e, 26 f,26 g and 26 h is not incorporated for the sake of simplicity.

The controller 21 a is connected to the mixer 26 f, and the audiosignal, which is produced from the audio data codes in an audio file, istransferred to the mixer 26 f. Thus, the audio signal is converted toelectric voice through the electronic tone producer 26B as well asthrough the sound system 17B.

Behavior of Music Reproducing System Preparation of New Program

FIG. 40 illustrates a communication sequence for preparation of a newprogram. A user is assumed to wish to prepare a new program on the soundreproducer 10B. The user gives an instruction to the controller 11Bthrough the computer program and/or mouse 15B. Then, the controller 11Backnowledges user's instruction for communication with the music datadistribution server computer 30B as indicated by SIB, and makes the wwwbrowser start.

The controller 11B transmits a request, which contains an URL addressassigned to the visual image data for producing an authenticationpicture, to the music data distribution server computer 30B as indicatedby S2B. When the request arrives at the communication module 32B, thecontroller 31B reads out the piece of visual image data from the datastorage 33B, and transmits the piece of visual image data from thecommunication module 32B to the communication module 12B of the soundreproducer 10B as indicated by S3B.

The piece of visual image data arrives at the communication module 12B,and the controller 11B produces the authentication picture on thedisplay panel 16B. The user inputs user's identification code andpassword into the control panel 15B so that the controller 11B transmitsthe user's identification code and password from the communicationmodule 12B to the communication module 32B as indicated by S4B.

Upon reception of user's identification code and password, thecontroller 31B reads out the piece of authentication data 33 f of userfrom the data storage 33B, and compares the received user'sidentification code and password with the registered user'sidentification code and registered password to see whether or not theuser has been under the onerous contract. If at least one of the user'sidentification code and password is different from the registered one,the controller 31B transmits the visual image data expressing theinconsistency from the communication module 32B to the communicationmodule 12B. On the other hand, when both of the user's identificationcode and passwords are consistent with the registered user'sidentification code and password, the controller 31B admits the right toaccess, and authenticates the user as indicated by S5B. The controller31B reads out a piece of visual image data expressing a picture foreditorial work from the data storage 33B, and transmits the piece ofvisual image data from the communication module 32B to the communicationmodule 12B as indicated by S6B.

Upon reception of the piece of visual image data, the controller 11Bproduces the picture for editorial work on the display panel 15B asindicated by S7B. The user selects an individual audio file or pluralindividual audio files and MIDI file or MIDI files on the picture foreditorial work, and determines the order of contents in a new programwith the assistance of supporting program running on the controller 11Bas indicated by S8B.

FIG. 41 shows the picture for editorial work produced on the paneldisplay 16B. The picture contains several windows “PROGRAM NAME” b1,“AUDIO FILE LIST” b2, “MIDI FILE LIST” b3, “LOCAL AUDIO FILELIST” b4,“LOCAL MIDI FILE LIST” b5 and “CONTENTS OF PROGRAM” b6 and images ofboxes b7, b8, b9 and b10. The boxes are labeled with “ADD TO PROGRAM”,“DELETE FROM PROGRAM”, “REARRANGE” and “REGISTER”. The individual audiofiles, which are stored in the data storage 33B of music datadistribution server computer 30B, are listed in the window “AUDIO FILELIST” b2, and the MIDI files, which are also stored in the data storage33B, are listed in the window “MIDI FILE LIST” b3. On the other hand,the individual audio files, which are stored in the data storage 14B ofsound reproducer 10B, are listed in the window “LOCAL AUDIO FILE LIST”b4, and the MIDI files, which are also stored in the data storage 14B,are listed in the window “LOCAL AUDIO FILE LIST” b5.

The user is assumed to input the file name “piano-fan” through thecontrol panel 15B, and the characters “piano-fan” are produced in thewindow b1.

Subsequently, the user moves the cursor to an audio file name“narration 1. wav” in the window b4 by sliding the mouse, and clicks thebutton of mouse for designating the audio file “narration 1.wav”.Thereafter, the user moves the cursor into the box “ADD TO PROGRAM” bymeans of the mouse, and clicks the button. Then, the audio file“narration 1.wav” is selected by the user, and the fine name “narration1.wav” is written in the first row of the window b6.

The user repeats the above described operations so that the rows in thewindow b6 are successively filled with the fine names “pianofan001.mid”,“narration 2.wav”, “pianofan002.mid”, “pianofan003.mid”, “narration3.wav” and “pianofan004.mid”. If the user wishes to delete an audio fileor a MIDI file from the program, the user moves the cursor to the filename in the window b6, clicks the button for designating the audio fileor MIDI file to be deleted, moves the cursor into the box “DELETE FROMPROGRAM” for designating the operation, and clicks the button so as todelete the audio file or MIDI file from the program. The user canrearrange the order of contents by using the box “REARRANGE”. Though notshown in FIG. 41, another window is provided in the picture, and theuser inputs introductory remarks through the control panel 15B, ifdesired so as to write the introductory remarks in the window.

When the user completes the editorial work, the user moves the cursorinto the box “REGISTER”, and clicks the button of mouse. Then, thecontroller 11B determines pieces of program data expressing the programname, contents of program and order of contents to be reproduced, andtransmits the pieces of program data and pieces of audio data expressingthe audio files selected from the local audio file list from thecommunication module 12B to the communication module 32B as a requestfor registration as indicated by S9B. In case where the user selected aMIDI file from the local MIDI file list and wrote the introductoryremarks, the pieces of music data expressing the MIDI files and piecesof introductory data expressing the introductory remarks are added tothe pieces of program data and pieces of audio data, and form otherparts of the request for registration.

Upon reception of the request for registration, the controller 31Btransfers the request for registration, i.e., the pieces of program dataand pieces of audio data from the communication module 32B to the datastorage 33B, and stores the request for registration in the data storage33B. Of course, if the user selected a MIDI file from the local MIDIfile list, and/or if the user wrote the introductory remarks, the piecesof music data and/or pieces of introductory data are further stored inthe data storage 33B.

Subsequently, the controller 31B selects the individual audio files andMIDI files from the data storage 33B as indicated by S10B, anddetermines the order of files to be reproduced as indicated by S11B.

The controller 31B further determines the playback time period for eachof the contents of program on the basis of the file size of selectedindividual audio files and file size of MIDI files, and accumulates theplayback time periods so as to determine the start time and terminationtime of each content of program. In short, the controller 311Bdetermines the playback schedule as indicated by S13B.

FIG. 42 shows the playback schedule of the program. The file names arecorrelated with the playback schedule. The time periods to be consumedby the contents are 1 minute and 16 seconds, 4 minutes and 32 seconds,41 seconds, 7 minutes and 31 seconds, 10 minutes and 13 seconds, 1minute and 7 seconds and 6 minutes and 3 seconds. The controller 31Baccumulates the playback time periods so as to determine the start timeat 0 minute and 0 second, 1 minute and 16 seconds, 5 minutes and 48seconds, 6 minutes and 29 seconds, 14 minutes and 0 second, 24 minutesand 13 seconds and 25 minutes and 20 seconds. The termination time isequal to the start time of the next content, and the seventh content ofthe MIDI file “piano-fan004.mid” is terminated at 31 minutes and 23seconds. The playback schedule is memorized in the data storage 33B.

The controller 31B spaces the second to seventh contents from the firstto sixth contents by the time periods equal to the playback time of thefirst to sixth contents, and inserts the audio data codes expressing thesilence. Thus, the composite audio file for the program “piano-fan.wab”is prepared, and is stored in the data storage 33B as indicated by S14B.

FIG. 43 shows the composite audio file “piano-fan.wab” and MIDI files tobe inserted among the narration. The content “narration 2.wab” is spacedfrom the content “narration 1.wab” by the playback time of music tunerecorded in the MIDI file “pianofan001.mid”, and the audio codesexpressing the silence are inserted between the content “narration1.wab” and the content “narration 2.wab”. The content “narration 2.wab”is spaced from the content “narration 3.wab” by the total playback timeof the music tunes recorded in the MIDI files “pianofan002.mid” and“pianofan003.mid”, and the audio data codes expressing the silence areinserted between the content “narration 2.wab” and the content“narration 3.wab”. The content “narration 3.wab” is followed by themusic tune recorded in the MIDI file “piano-fan004.mid”, and the timeperiod consumed by the audio data codes expressing the silence is equalto the playback time of music tune recorded in the MIDI file“pianofan004.mid”.

The controller 31B issues the program identifier “CID001” on the program“piano-fan.wab”, and assigns the URL addresses to the contents ofprograms, respectively. As a result, the program “piano-fan.wab” iscompleted as shown in FIG. 37.

Finally, the controller 31B adds the file size and creation date to thecomposite audio file “piano-fan.wab”, and registers the file identifierand program identifier in the program management table (see FIG. 36) asindicated by S15B.

When the registration is completed, the controller 31B transmits anotice of registration from the communication module 32B to thecommunication module 12B. Upon reception of the notice of registration,the controller 11B reproduces characters expressing the completion ofregistration on the display panel 16B, and terminates the dataprocessing for the editorial work at the producing the characters.

Acquisition of Composite Audio File

FIG. 44 shows a communication sequence between the sound reproducer 10Band the music data distribution server computer 30B. A user is assumedto wish to download a composite audio for reproducing a program. Theuser gives an instruction to communicate with the music datadistribution server computer 30B to the sound reproducer 10B through thecontrol panel 15B. Then, the controller 11B acknowledges user'sinstruction as indicated by S21, and makes the www browser to run on thecontroller 11B. The controller 11B designates the URL address indicativeof the memory location assigned a menu, and sends a request fordownloading the menu or a list of programs, i.e., an http request fromthe communication module 12B to the communication module 32B of the datadistribution server computer 30B as indicated by S22.

Upon reception of the request, the music data distribution servercomputer 30 reads out the visual data expressing a picture forauthentication, and transmits the visual data from the communicationmodule 32B to the communication module 12B as indicated by S23. Thecontroller 11B produces the picture for authentication on the displaypanel 16B. Two windows are defined in the picture for authentication,and are respectively assigned to the user's identification code andpassword. The user inputs the user's identification code and passwordthrough the control panel 15B so as to produce the characters expressingthe user's identification code and password in the windows. The userconfirms the user's identification code and password on the displaypanel 16B, and instructs the controller 11B to transmit the user'sidentification code and password from the communication module 12B tothe communication module 32B as indicated by S24.

Upon reception of the user's identification code and password, thecontroller 31B reads out the piece of authentication data expressing theuser's identification code and password from the data storage 33B, andcompares the received identification code and password with the read-outidentification code and password to see whether or not the user ispermitted to communicate with the service provider.

If the comparison results in inconsistency, the controller 31B transmitsa piece of visual data expressing the inconsistency from thecommunication module 32B to the communication module 12B. The controller11B produces the visual image of inconsistency on the display panel 16B.In this situation, the narration 1, 2 and 3 are reproduced from theaudio signal converted from the audio data codes in the composite audiofile at irregular intervals, because the composite audio file has beenstored in the date storage 14B. However, any music tune is not produced.Thus, only the authenticated users can reproduce the narration in thecomposite audio file together with the music tunes stored in the MIDIfiles.

On the other hand, if the comparison results in consistency, thecontroller 31B authenticates the user as indicated by S25, and reads outa piece of visual data expressing a menu or a list of program from thedata storage 33B as indicated by S26. The controller 31B transmits thepiece of visual data expressing the menu from the communication module32B to the communication module 12B as indicated by S27.

The piece of visual data expressing the menu arrives at thecommunication module 12B. Then, the controller 11B produces the visualimage of menu on the display panel 16B as indicated by S28.

FIG. 45 shows the visual image of menu produced on the display panel16B. Program names “Piano fan”, “Piano tunes No. 1”, “Piano tunes No. 2”take place under a prompt message “Place the mark in the box on the leftside of your favorite program, and push “download””. The programs arefollowed by recommendation to users. Though not shown in the displaypanel, the URL addresses are added to the program names by means of theanchor tag of HTML.

The user selects a program from the menu, and places the mark in the boxon the left side of the program name by means of a pointer. When theuser clicks the image of button “Download”, the controller 11Backnowledges the user's selection of program as indicated by S29, andtransmits the request, which contains the URL address, from thecommunication module 12B to the communication module 32B of the musicdata distribution server computer 30B as by S30. When the user does notfind any favorite program, he or she clicks the image of button “Next”.Then, other programs are displayed.

Upon reception of the request, the controller 31B accesses the compositeaudio file at the URL address, and reads out the composite audio filecorresponding to the program name from the data storage 33B as indicatedby S31. The controller 31B transmits the composite audio file from thecommunication module 32B to the communication module 12B as indicated byS32.

The composite audio file arrives at the communication module 12B. Then,the controller 11B transfers the composite audio file to the datastorage 14B, and stores the composite audio file in the data storage 14Bas indicated by S33. Thus, the download is accomplished.

Playback of Program in Collaboration

FIG. 46 shows a communication sequence among the sound reproducer 10B,automatic player musical instrument 20B and music data distributionserver computer 30B. First, the user establishes a communication channelbetween the communication module 13B of sound reproducer 10B and thecommunication module 24B of automatic player musical instrument 20B asindicated by S41, and gives the sound reproducer 10B an instruction forplayback of a program. The audio playback program starts to run on thecontroller 11B, and produces the picture shown in FIG. 47 on the displaypanel 16B. The program names “Piano fan!”, “Complete collection No. 1 ofpiano concertos” and “Best pianos” are displayed on the display panel16B together with the images of boxes respectively labeled with“PLAYBACK” and “Next”.

If the user does not find his or her favorite program, he or she movesthe cursor to the box “Next”, and clicks the button of mouse. Then,other program names are displayed on the display panel 16B. The user isassumed to click the button of mouse at the box on the left side of“Piano fan!”. Then, the controller 11B acknowledges the user'sinstruction for playback as indicated by S42. Then, the controller 11Bproduces a picture for authentication on the display panel 16B, andprompts the user to input the user identification code and password. Theuser inputs the user identification code and password through thecontrol panel 15B as indicated by S43. A piece of the visual dataexpressing the picture for authentication has been already stored in thedata storage 14B. Otherwise, the piece of visual data may be downloadedfrom the music data distribution server computer 30B.

The controller 11B accesses the FAT, and reads out the file identifier,which includes the pieces of data information expressing the file name“piano-fan.wab”, file size “41.5 mega-bytes” and creation date“2006/1/25” from the FAT. The controller 11B transmits the fileidentifier from the communication module 13B to the communication module24B of the automatic player musical instrument 20B as indicated by S44.

Upon reception of the file identifier, the controller 21 transmits thefile identifier, user identification code and password from thecommunication module 23 to the communication module 32B of the musicdata distribution sever computer 30B as indicated by S45.

When the file identifier, user identification code and password arriveat the communication module 32B, the controller 31B reads out the pieceof authentication data 33 f expressing the user's identification codeand password from the data storage 33B, and compares the receivedidentification code and password with the read-out identification codeand password to see whether or not the user is permitted to communicatewith the service provider. If the comparison results in inconsistency,the controller 31B transmits a piece of visual data expressing theinconsistency from the communication module 32B through thecommunication modules 23 and 24B to the communication module 13B. Thecontroller 11B produces the visual image of inconsistency on the displaypanel 16B.

On the other hand, if the comparison results in consistency, thecontroller 31B authenticates the user as indicated by S46, and accessesthe program management table 33 a shown in FIG. 36 so as to determinethe program identifier “CID001” as indicated by S47. The controller 31Asearches the data storage 33B for the program labeled with the programidentifier “CID001”, and reads out the program from the data storage 33Bas indicated by S48. The controller 31A transmits the read-out program33Bb (see FIG. 37) from the communication module 32B to thecommunication module 23 of the automatic player musical instrument 20Bas indicated by S49.

The program 33Bb arrives at the communication module 23. Then, thecontroller 21 searches the data storage 22B for the program labeled withthe program name to see whether or not the MIDI files of the program33Bb have been already stored in the data storage 22B as indicated byS50. As shown in FIG. 37, the program contains the MIDI files“piano-fan001.mid”, “piano-fan002.mid”, “piano-fan003.mid” and“piano-fan004.mid”. All of the MIDI files “piano-fan001.mid”,“piano-fan002.mid”, “piano-fan003.mid” and “piano-fan004.mid” areassumed to be not stored in the data storage 22B.

The controller 21 transmits an http request, which contains the URLaddress “http://www.abc.co.jp/CID001/piano-fan001.mid”, from thecommunication module 23 to the communication module 32B as indicated byS51. Then, the controller 31B reads out the MIDI file from the URLaddress, and transmits the MIDI file from the communication module 32Bto the communication module 23 as indicated by S52. The controller 21transfers the received MIDI file from the communication module 23 to thedata storage 22B, and stores it in the data storage 22B as indicated byS53. The request and response are repeated for the other MIDI files“piano-fan002.mid”, “piano-fan003.mid” and “piano-fan004.mid”. As aresult, all the MIDI files “piano-fan001.mid”, “piano-fan002.mid”,“piano-fan003.mid” and “piano-fan004.mid” are prepared in the datastorage 22B.

When all of the MIDI files “piano-fan001.mid”, “piano-fan002.mid”,“piano-fan003.mid” and “piano-fan004.mid” are prepared in the datastorage 22B, the controller 21 gets ready to perform the music tunes 1to 4. The controller 21 sends a notice of ready-state from thecommunication module 24B to the communication module 13B of soundreproducer 10B as indicated by S54.

Upon reception of the notice of ready-state, the controller 11B producesa picture shown in FIG. 48 on the display panel 16B so as to inform theuser of the ready-state, and asks for permission. The user is assumed toclick the button of mouse at the box “Yes”. Then, the controller 11Bsends a notice of initiation from the communication module 13B to thecommunication module 24B as indicated by S55.

The sound reproducer 10B starts the conversion from the audio data codesof the composite audio file to the audio signal as indicated by S56. Theautomatic player musical instrument 20B starts the playback on the basisof the music data codes of MIDI file as indicated by S57, and starts tomeasure the lapse of time with the clock 21 a. The audio signal andduration data codes are transmitted from the communication module 13B tothe communication module 24B as indicated by S58.

FIG. 49 shows a job sequence realized through execution of the computerprogram installed in the controller 21 and electronic system 26 d of theautomatic player musical instrument 20B. As shown in FIG. 37, theprogram CID001 contains the playback schedule. The first music tunestarts at 1′ 16″, and is terminated at 5′48″. The second music tunestarts at 6′29″, and is terminated at 14′00″. “Narration 1” is to bereproduce before the first music tune, and “narration 2” is insertedbetween the first music tune and the second music tune as shown in FIG.34. The third music tune starts at 14′13″, and is terminated at 24′13″.The fourth music tune starts at 25′ 20″, and is terminated at 31′23″.“Narration 3” is inserted between the third music tune and the fourthmusic tune.

The controller 21 checks the clock 21 a to see whether or not the timeto playback the first music tune comes as by step S101B. The answer atstep S101B is given negative “No” from the initiation of playback to1′16″, and the controller 21 transfers the audio signal from thecommunication module 24B to the mixer 26 f as by step S102B. For thisreason, the narration 1 is reproduced.

The answer at step S101B is changed to affirmative “Yes” at 1′16″. Then,the controller 21 starts to supply the key event data code or codes fromthe data storage 22B to the electronic system 26 d for the playback ofthe first music tune as by step S103B.

The user has two options, i.e., the automatic playing system 20Bc andelectronic tone producer 26B. If the user selects the automatic playingsystem 20Bc, the black keys, white keys and pedal mechanism areselectively driven by the solenoid-operated actuators 26 a, and theacoustic piano tones are produced through the acoustic piano (notshown). On the other hand, when the user selects the electronic toneproducer 26B, the music data code or codes are transferred to theelectronic tone generator 26 e. The audio signal is produced on thebasis of the music data code or codes, and is supplied through the mixer26 f and amplifier 26 g to the loudspeakers 26 h. The audio signal isconverted to the electronic tones along the music passage of the firstmusic tune.

Subsequently, the controller 21 checks the clock 21 a to see whether ornot the time to terminate the playback comes as by step S104B. Theanswer at step S105B is given negative “No” until 5′48″, and thecontroller 21 returns to step S103B. The controller 21 checks the clock21 a to see whether or not the time period between the key event and thenext key event is expired. While the answer is being given negative“No”, the controller 21 continuously sets the clock 21 a with theduration data codes of the audio file. When the time period is expired,the controller 21 transfers the next event data code or codes to theelectronic system 26 d for producing the acoustic piano tone orelectronic tone.

The controller 21A reiterates the loop consisting of steps S103B andstep S104B until 5′48″. When the answer at step S104B is changed toaffirmative “Yes”, the controller 21 restarts to supply the audio signalto the mixer 26 f, and the narration 2 is reproduced. The audio signalis changed to the supply of event data codes at 6′29″, and the secondmusic tune is reproduced through the automatic player musical instrument20B until 14′00″. The third music tune starts at 14′13″ without anynarration, and is terminated at 24′13″. The third music tune is followedby the narration 3 reproduced from the audio signal. After the narration3, the fourth music tune is reproduced on the basis of the MIDI file.

When all the contents of program are reproduced, the sound reproducer10B terminates the data processing as indicated by S59 (see FIG. 46),and sends a notice of termination to the automatic playing musicalinstrument 20B as indicated by S60. Upon reception of the notice oftermination, the automatic playing musical instrument 20B alsoterminates the data processing as indicated by S61.

As will be understood from the foregoing description, an authenticateduser, who is under the onerous contract with the service provider, canpre-pare a unique program by combining the composite audio files withMIDI files, and deposit the unique program in the data storage 33B ofthe music distribution server computer 30B. Other authenticated userscan download the composite audio file together with the MIDI files fromthe music data distribution server computer, and reproduce the narrationand music tunes along the program.

Moreover, the programs are reproduced in collaboration between the soundreproducer 10B/10C and the associated automatic player musicalinstrument 20B/20C as similar to those in the description on the firstembodiment. The audience feels the reproduction of program incollaboration between the sound reproducer 10B/10C and automatic playermusical instrument 20B/20C close to the performance in a live concert.

Modifications of Third Embodiment First Modification

The first modification of music reproducing system 100B is differentfrom the third embodiment in the communication from S47 to S53. In thethird embodiment, only the MIDI files not found in the data storage 22are downloaded from the music data distribution server computer 30B.This feature is desirable from the viewpoint of reduction of load indownloading work. On the contrary, when the automatic player musicalinstrument 20B transmits the file identifier to the music datadistribution server computer 30B, all of the MIDI music data files andprogram are concurrently downloaded from the music data distributionserver computer 30B to the automatic player musical instrument 20B inthe first modification. Thus, the communication is made simplifiedrather than the communication in the third embodiment.

Second Modification

FIG. 50 illustrates the system configuration of the second modificationof the third embodiment. Although the audio files, programs and MIDIfiles are stored in the single music data distribution server computer30B in the second embodiment, the composite audio files, individualaudio files and programs are stored in a server computer 30Ba differentfrom the server computers 30Bb and 30Bc where the MIDI files are stored.

When a user prepare a composite audio file, the user combines anindividual audio file with the MIDI files, which have been alreadystored in the data storage 14B or are stored in the server computer 30Bband/or 30Bc, and transmits the composite audio file to the servercomputer 30Ba so as to deposit the composite audio file in the servercomputer 30Ba.

When another user instructs the sound producer (not shown) to reproducea program in collaboration with an associated automatic player musicalinstrument (not shown), the program and composite audio file are firstlydownloaded from the server computer 30Ba to the sound reproducer (notshown), and makes the automatic player musical instrument (not shown) totransmit a request for downloading the MIDI files at the URL addressesin the program from the server computer 30Bb and/or 30Bc to theautomatic player musical instrument (not shown).

It is not easy for the service provider to prepare a huge number ofaudio files and a huge number of MIDI file in the server computer. Inthe second modification, plural service providers bear the huge numberof files in the plural server computers 30Ba, 30Bb and 30Bc so that themusic reproducing system is easily established in the network. Thus, theservice providers can offer a large number of programs to users throughthe second modification of the music reproducing system.

In case where only one server computer participates in the musicreproducing system, the URL addresses may be deleted from the programs,because the controller can search the data storage by the MIDI filenames. However, the MIDI files are stored in plural server computers.The URL addresses are desirable.

The sound reproducer 10B and automatic player musical instrument 20B mayhave a unitary structure.

Third Modification

The third modification of the music reproducing system 100B has anaccounting system 50B. The accounting system 50B is, by way of example,implemented by various accounting networks such as the Japan BankNetwork and/or CAFIS (Credit And Finance Information System), and isconnected to the server computers 30Ba, 30Bb and 30Bc. When a userdownloads the programs, audio files and MIDI files, the serviceproviders write out bills, and settle accounts with the users throughthe accounting system 50B

In detail, the composite audio files, individual audio files and MIDIfiles are priced, and are accompanied with price lists in the datastorages of the server computers 30Ba, 30Bb and 30Bc. A user list isfurther stored in the data storages, and the users have been registeredin the user list. The name, address, birthday, user identifier, bankaccount number and credit card number are written in the user list foreach of the registered users.

When a user requests the server computer 30Ba, 30Bb or 30Bc for thedownload of a composite audio file, an individual audio file, a programor a MIDI file, the controller of the server computer requests the userto send the user identifier to the server computer 30Ba, 30Bb or 30Bc,and transmits the program or file to the sound reproducer 10B and/orautomatic player musical instrument 20B after the confirmation of theuser.

Upon completion of the download, the controller of server computeraccesses the price list so as to write out a bill, and sends the bill tothe account system 50B for the settlement. If the user requests theservice providers to settle the accounts through the credit card system,the service providers put the bill in the credit account. Thus, thebills are automatically settled at the user's account number through theaccounting system 50B. The service provider pays the royalty to thecopyright holder after the settlement.

Fourth Modification

The fourth modification of music reproducing system 100B is differentfrom the third embodiment in that the automatic player musicalinstrument 20B can reproduce music tunes through in-stream playback onthe basis of MIDI files. In the in-stream playback, the music data codesare transmitted from the music data distribution server computer 30Bthrough the communication network 40B, and the music tune is reproducedon the basis of the music data codes in a real time fashion. Otherwise,the MIDI file is stored in the random access memory, and is erased afterthe playback. For this reason, it is difficult to reuse the music datacodes after the in-stream playback.

A user can choose the playback method between the standard playbackafter the download and the in-stream playback. If the user chooses thestandard playback, the automatic player musical instrument 20B behavesas similar to that shown in FIG. 46. On the other hand, when the userchooses the in-stream playback, the music data codes are transmittedfrom the music data distribution server computer 30B to automatic playermusical instrument 20B, and are temporarily stored in the random accessmemory of the controller 21. The music data codes are timely transferredto the electronic system 26 d so as to produce the acoustic piano tonesor electronic tones on the basis of the event data codes.

In case where the fee-charging download is employed in the fourthmodification, the in-stream playback is beneficial to users, because theprice of MIDI files for the in-stream playback is lower than the priceof MIDI files for the standard playback. Users may choose the standardplayback for music tunes out of the copyright, and choose the in-streamplayback for the copyrighted music tunes.

In order to respond to user's choice, the MIDI files are broken downinto two groups, the copyrighted music tunes, i.e., the first group andthe music tunes out of the copyright, i.e., the second group, and a tagindicative of the first group is added to the MIDI files in the firstgroup, and another tag indicative of the second group is added to theMIDI files in the second group.

A user is assumed to reproduce the contents of a program. The programcontains copyrighted music tunes and music tunes out of the copyright.In this situation, the MIDI files in the second group are downloadedinto the data storage 22. However, the MIDI files in the first groupsare not downloaded.

While the automatic player music instrument 20B is collaborating withthe sound reproducer 10B, the music tunes out of the copyright arereproduced on the basis of the music data codes in the MIDI files storedin the data storage 22 between the start time and the termination timedesignated in the program, and the controller 21 requests the music datadistribution server computer 30B to transmit the music data codesexpressing the copyrighted music tunes to the communication module 23before the start time so as to permit the electronic system 26 d tostart the playback at the start time. Upon completion of thereproduction of contents of program, the music data codes in the randomaccess memory are erased.

Thus, the service provider can restrict the reuse of the MIDI filethrough the in-stream playback, and offer the program contents at lowprice.

Fifth Modification

The fifth modification of music reproducing system 100B is differentfrom the third embodiment in that only one of the sound reproducer10B/10C and automatic player musical instrument 20B/20C has thecommunication capability with the music data distribution servercomputer 30B.

Only the sound reproducer 10B/10C is assumed to have the communicationcapability. The automatic player musical instrument 20B/20C acquires aprogram and MIDI files from the music data distribution server computer30B through the sound reproducer 10B.

In detail, the automatic player musical instrument 20B/20C requests thesound reproducer 10B/10C for the acquisition of program and MIDI filesthrough the communication channel 40 c, and the program and MIDI filesare downloaded from the communication module 32B to the communicationmodule 12B. The controller 11B transfers the program and MIDI files fromthe communication module 13A to the communication module 24 through thecommunication channel 40 c.

Thus, the automatic player musical instrument 20B/20C or soundreproducer 10B/10C of the fifth modification is simpler than that of themusic reproducing system 100B.

Sixth Modification

The sixth modification is different from the music reproducing system100B in that the playback on the basis of the MIDI file is madesynchronous with the conversion from the audio data codes to the audiosignal through the synchronization technique disclosed in Japan PatentApplication laid-open No. 2003-271138 or the synchronization techniquedisclosed in Japan Patent Application laid-open No. 2006-47761.

The synchronization technique disclosed in the former laid-open is thatunique peaks of an audio signal are correlated with music data codes ina table. The controller checks the table to see whether or not the musicdata codes are processed concurrently with the unique peaks. When theanswer is given negative, the controller advances the internal clock orputs the internal clock slow. Since the time intervals between the keyevents are measured with the internal clock, the two apparatus aresynchronized with one another.

The synchronization technique disclosed in the latter laid-open is thatthe synchronization control is assigned to one of the plural channelsbetween two apparatus. While the audio data codes are being converted tothe audio signal, the controller of sound reproducer assigns the piecesof audio data to the channel L and LTC, which is a time code defined inthe SMTPE (Society of Motion Picture and Television Engineers) andcontains the pieces of time data and file identifier, to the channel R,and transmits the pieces of audio data and LTC to the automatic playermusical instrument through the channels L and R. The controller ofautomatic player musical instrument makes the internal clock set withthe pieces of time data contained in the LTC.

Seventh Modification

The seventh modification of music reproducing system 100B is differentfrom the third embodiment in that either file size or creation date isomitted from the file identifier. The data structure of file identifiershown in FIG. 36 does not set any limit to the technical scope of thepresent invention. A serial number may serve as another file identifier.

Eighth Modification

The eighth modification of music reproducing system 100B is differentfrom the third embodiment in that the electric voice is produced throughthe sound system 17B. Although the audio signal is not supplied to theautomatic player musical instrument 20B, the duration time codes in theaudio file are transmitted from the communication module 13A to thecommunication module 24. The controller 21 makes the data transfer tothe electronic system 26 d synchronized with the conversion of audiodata codes to the audio signal as described hereinbefore.

The audio signal may be converted to the electric tones and electricvoice through both of the sound system 17B and electronic tone producer26B.

Ninth Modification

The ninth modification of music reproducing system 100B is differentfrom the third embodiment in that the MIDI file or files are downloadedafter the initiation of reproduction of a program. Of course, each MIDIfile is required for the automatic player musical instrument 20B beforethe start time.

Tenth Modification

The tenth modification of music reproducing system 100B is differentfrom the third embodiment in that certain programs contain only musictunes. In other words, any narration does not form in the certainprograms.

Eleventh Modification

The eleventh modification of music reproducing system 100B is differentfrom the third embodiment in that the picture for authentication isproduced on a display panel (not shown) of the automatic player musicalinstrument 20B/20C. In this modification, the piece of visual dataexpressing the picture for authentication is stored in the data storage22B, and the controller 21 produces the picture for authentication fromthe piece of visual data on the display panel.

When the user completes the user identification code and password on thedisplay panel, the controller 21 transmits the user identification codeand password together with the file identifier from the communicationmodule 23 to the communication module 32B. Upon reception of the useridentification code and password, the controller 31B starts thecomparison work between the received identification code and receivedpassword and the read-out identification code and read-out password tosee whether or not the user has the right to access the data storage33B.

Twelfth Modification

The twelfth modification of music reproducing system 100B is differentfrom the third embodiment in that another sort of electronic deviceserves as the sound reproducer 10B/10C. The personal computer may bereplaced with a mobile telephone, a PHS (Personal Handy phone System)terminal, a PDA (Personal Digital Assistants) or a portable musicplayer.

The computer programs for the controllers 11B, 21 and 31B may be offeredto users independently of the hardware. One or two of the computerprograms or all of the computer programs may be stored in a magnetictape cassette, a magnetic disc, a flexible disc, an optical informationstorage medium, an opto-magnetic information storage medium, a compactdisc, a DVD disc or a RAM stick.

Although particular embodiments of the present invention have been shownand described, it will be apparent to those skilled in the art thatvarious changes and modifications may be made without departing from thespirit and scope of the present invention.

For example, a mute system may be provided inside of the automaticplayer musical instrument 20, 20A, 20B or 20C. The mute system includesa hammer stopper and a driving system for the hammer stopper. When ahuman pianist wishes to practice the fingering on the acoustic piano 20a, he or she moves the hammer stopper into the trajectories of hammers.While a human pianist is fingering on the keyboard, the hammers reboundon the hammer stopper before collision with the strings. Thus, thehammer stopper prohibits the strings from vibrations. On the other hand,when the human pianist wishes to perform a music tune by producingacoustic piano tones, he or she moves the hammer stopper outside of thetrajectories of hammers. While the human pianist is fingering on thekeyboard, the hammers are brought into collision with the stringswithout any interruption, and give rise to the vibrations of associatedstrings for producing the acoustic piano tones.

An automatic player musical instrument may be a combination between anautomatic player and another sort of keyboard musical instrument suchas, for example, an organ or a harpsichord or another combinationbetween an automatic player and another sort of acoustic musicalinstrument such as, for example, a percussion instrument, a stringedmusical instrument or a wind musical instrument.

The electronic tone producer 26, 26A and 26B are not indispensablefeature of the present invention. An automatic player musical instrumentwithout any electronic tone producer may be connected to the soundreproducer 10, 10A, 10B or 10C.

The system components circuit components and jobs are correlated withclaim languages as follows. The program labeled with the programidentifier “CID001” is an example of “music program”, and the narration1, 2 and 3 and music tunes 1, 2, 3 and 4 are corresponding to a“non-musical content” and a “musical content”, respectively. Thecommunication network 40, 40A or 40B is corresponding to a“communication network”.

The music data distributing server computer 30, 30A or 30B or servercomputers 30 a/30 b/30 c, 30Aa/30Ab/30Ac or 30Ba/30Bb/30Bc serve as a“music data distributor”. The data storage 33, 33A or 33B andcommunication module 32, 32A or 32B serve as a “first data storage” anda “first communication module”, respectively, and the controller 31, 31Aor 31B and computer program 33 c as a whole constitute a “firstinformation processing apparatus”. The lapse of time from the head ofaudio file is a “first viewpoint, and the time period between an eventto the next event is a “second viewpoint”.

The sound reproducer 10, 10A, 10B or 10C, automatic player musicalinstrument 20, 20A, 20B or 20C and communication channel 40 c form incombination a “program reproducer”. The sound system 17, 17A or 17B andthe mixer 26 x, amplifier 26 g and loudspeakers 26 h of electronic toneproducer 26, 26A or 26B as a whole constitute a “first data-to-soundconverter”, and the acoustic piano 20 a, automatic playing system 20 cand electronic tone producer 26, 26A or 26B as a whole constitute a“second data-to-sound converter”. The data storage 14, 14A or 14B anddata storage 22 or 22B form in combination a “second data storage”, andthe communication module 12, 12A or 12B, communication module 13, 13A or13B, communication module 23, communication module 24 or 24B andcommunication channel 40 c form in combination a “second communicationmodule”. The controller 11, 11A, 11B or 11C, computer programs 14 a, 14b, controller 21 and computer programs running on the controller 21 as awhole constitute a “second information processing apparatus”.

The music tune 4 in the second embodiment serves as “another musicalcontent”, and the account system 50, 50A or 50B serves as an “accountsystem”. The loudspeakers 26 h serve as a “signal-to-sound converter”.

The audio file list in the window b2 and local audio file list in thewindow b4 form in combination an “audio data list”, and the MIDI filelist in the window b3 and local MIDI file list in the window b5 serve asa “music data list”, and the controller 11, 11A, 11B or 11C, computerprogram for communication between the music data distribution servercomputer and sound reproducer, computer program for editorial work 33Bcand computer program 14Bb for supporting editorial work are essentialparts of “editor and scheduler”.

1. A music reproducing system for reproducing a music program,comprising: a communication network; a music data distributor includinga first data storage for storing said music program containing at leastone musical content and at least one non-musical content, a data filecontaining pieces of audio data and pieces of a sort of time dataexpressing a time from a first viewpoint and another data filecontaining pieces of music data and pieces of another sort of time dataexpressing a time from a second view point different from said firstviewpoint, a first communication module connected to said communicationnetwork for receiving requests and delivering said music program, saiddata file and said another data file to said communication network, anda first information processing apparatus connected to said first datastorage and said first communication module and having an informationprocessing capability so as to manage said first data storage, interpretsaid requests and transfer said music program, said data file and saidanother data file between said first data storage and said firstcommunication module; and a program reproducer connected to saidcommunication network, and including a first data-to-sound converterfollowing said music program for reproducing said non-musical contentfrom said pieces of audio data on a schedule defined by said pieces ofsaid sort of time data, a second data-to-sound converter following saidmusic program for reproducing said musical content on the basis of saidpieces of music data on another schedule defined by said pieces of saidanother sort of time data, a second data storage storing said musicprogram, said data file and said another data file, a secondcommunication module connected to said communication network, a secondinformation processing apparatus connected to said first data-to-soundconverter, said second data-to-sound converter, said second data storageand said second communication module and having an informationprocessing capability so as to manage said second data storage, transmitsaid requests, receive at least said music program, make said firstdata-to-sound reproducer and said second data-to-sound reproducersynchronized on the basis of said pieces of said sort of time data andsaid pieces of said another sort of time data and interpret said musicprogram for selectively transferring said pieces of audio data and saidpieces of music data to said first data-to-sound converter and saidsecond data-to-sound converter.
 2. The music reproducing system as setforth in claim 1, in which at least one of said data file and saidanother data file is transmitted from said first communication module tosaid second communication module as well as said music program.
 3. Themusic reproducing system as set forth in claim 2, in which said secondinformation processing apparatus transmits the request for transmissionof at least one of said data file and said another data file from saidfirst communication module to said second communication module on thecondition that said at least one of said data file and said another datafile is not stored in said second data storage.
 4. The music reproducingsystem as set forth in claim 2, in which said first informationprocessing apparatus divides said another data file into pluralsegments, and transmits said plural segments from said firstcommunication module to said second communication module for anin-stream playback.
 5. The music reproducing system as set forth inclaim 1, in which said music program further contains another musicalcontent expressed by other pieces of audio data stored in said data filetogether with other pieces of said sort of time data, and said firstdata-to-sound converter produces said another musical content from saidother pieces of audio data on yet another schedule defined by said otherpieces of said another sort of time data.
 6. The music reproducingsystem as set forth in claim 5, in which said second informationprocessing apparatus makes said first data-to-sound converter reproducesaid another musical content in the absence of still another data filecontaining other pieces of music data expressing said another musicalcontent and other pieces of said another sort of time data.
 7. The musicreproducing system as set forth in claim 1, further comprising anaccount system connected to said music data distributor and settling abill written at the transmission of at least one of said music program,said data file and said another data file to said program reproducermanipulated by a non-authorized user
 8. The musical reproducing systemas set forth in claim 7, in which said second information processingapparatus transmits the request for transmission of at least one of saiddata file and said another data file from said second communicationmodule to said first communication module for an in-stream playback onthe condition of acquisition for value.
 9. A program reproducer forreproducing a music program containing a musical content and anon-musical content, comprising: a first data-to-sound converterfollowing said music program for reproducing said non-musical contentfrom pieces of audio data stored in a data file on a schedule defined bypieces of a sort of time data stored in said data file and expressing atime from a first viewpoint; a second data-to-sound converter followingsaid music program for reproducing said musical content on the basis ofpieces of music data stored in another data file on another scheduledefined by pieces of said another sort of time data stored in saidanother data file and expressing a time from a second viewpointdifferent from said first viewpoint; a data storage storing said musicprogram, said data file and said another data file; a communicationmodule connected to a communication network so as to receive at leastsaid music program from a music data distributor; and an informationprocessing apparatus connected to said first data-to-sound converter,said second data-to-sound converter, said data storage and saidcommunication module and having an information processing capability soas to manage said data storage, receive said music program, make saidfirst data-to-sound converter and said second data-to-sound convertersynchronized on the basis of said pieces of said sort of time data andsaid pieces of said another sort of time data and interpret said musicprogram for selectively transferring said pieces of audio data and saidpieces of music data to said first data-to-sound converter and saidsecond data-to-sound converter.
 10. The program reproducer as set forthin claim 9, in which said first data-to-sound converter restores saidpieces of audio data expressing discrete values on an analog waveform toan audio signal.
 11. The program reproducer as set forth in claim 10, inwhich said first data-to-sound converter is formed by an informationprocessing system and a computer program running on a processor of saidinformation processing system.
 12. The program reproducer as set forthin claim 9, in which said second data-to-sound converter includes anelectronic tone generator producing an audio signal on the basis of saidpieces of music data expressing at least pitch of tones to be produced,and a sound system having an signal-to-sound converter so as to convertsaid audio signal to electronic tones at said pitch.
 13. The programreproducer as set forth in claim 9, in which said second data-to-soundconverter includes an acoustic musical instrument for producing acoustictones, and an automatic player associated with said acoustic musicalinstrument and producing said acoustic tones in said acoustic musicalinstrument without any fingering of a human player.
 14. The programreproducer as set forth in claim 13, in which said second data-to-soundconverter further includes an electronic tone generator producing anaudio signal on the basis of said pieces of music data expressing atleast pitch of tones to be produced, and a sound system having ansignal-to-sound converter so as to convert said audio signal toelectronic tones at said pitch, wherein a user has a choice between saidelectronic tones and said acoustic tones.
 15. The program reproducer asset forth in claim 9, in which said first data-to-sound converter has adata-to-sound sub-converter physically independent of said seconddata-to-sound converter so that a communication channel is connectedbetween said data-to-sound sub-converter and said second data-to-soundconverter.
 16. The program reproducer as set forth in claim 9, in whichsaid information processing apparatus has a clock measuring said timefrom said first viewpoint on the basis of said piece of said sort oftime data, and determines said time from said second viewpoint on saidclock.
 17. A music data distributor connected to a communicationnetwork, comprising: a data storage for storing a music programcontaining at least one musical content and at least one non-musicalcontent, a data file containing pieces of audio data expressing said atleast one non-musical content and pieces of a sort of time dataexpressing a time from a first viewpoint and another data filecontaining pieces of music data expressing said at least one musicalcontent and pieces of another sort of time data expressing a time from asecond view point different from said first viewpoint; a communicationmodule connected to said communication network for receiving requests ofuser and delivering said music program, said data file and said anotherdata file to said communication network; and an information processingapparatus connected to said data storage and said communication module,and having an information processing capability so as to manage saiddata storage, interpret said requests user and transfer at least one ofsaid music program, said data file and said another data file betweensaid data storage and said communication module in response to therequest of user for transmitting said at least one of said program, sanddata file and said another data file to said user.
 18. The music datadistributor as set forth in claim 17, in which said data file furthercontains other pieces of audio data expressing another musical contentand other pieces of said sort of time data so that said another musicalcontent is reproduced from said other pieces of audio data in theabsence of yet another data file containing other pieces of music dataexpressing said another musical content.
 19. The music data distributoras set forth in claim 17, in which said information processing apparatusintermittently transmits said pieces of music data from saidcommunication module to said user for an in-stream playback.
 20. Themusic data distributor as set forth in claim 17, in which saidcommunication module is further connected to an account system so as tosettle a bill written at the transmission of at least one of said musicprogram, said data file and said another data file to a non-authorizeduser
 21. The music data distributor as set forth in claim 17, comprisingplural server computers located at different addresses on saidcommunication network, and said music program, said data file and saidanother data file are selectively stored in said plural servercomputers.
 22. A program producer for producing a music programcontaining at least one musical content and at least one non-musicalcontent, comprising: a first data storage for storing an audio data listwhere plural non-musical contents are found; a second data storage forstoring a music data list where plural musical contents are found; aneditor selecting said at least one musical content and said at least onenon-musical content from said music data list and said audio data list;a scheduler determining a playback schedule on which said at least onenon-musical content and said at least one musical content are to bereproduced; and a program manager labeling said music program with aprogram identifier and put said program identifier on a programmanagement table together with other program identifier of other musicprograms.
 23. The program producer as set forth in claim 22, in whichsaid at least one musical content is correlated with an address on acommunication network at which a music data file expressing said musicalcontent is stored.
 24. The program producer as set forth in claim 22, inwhich said playback schedule forms a part of an file identifier, andsaid file identifier is correlated with said program identifier.
 25. Aninformation storage medium storing a computer program, said computerprogram expressing a method of preparing a music program comprising thesteps of: a) designating at least one musical content expressed bypieces of music data and at least one non-musical content expressingpieces of audio data; b) arranging said at least one musical content andsaid at least one non-musical content in the order of playback so as todetermine a music program; c) determining a playback schedule where atleast a start time is defined for each of the contents of said musicprogram; d) forming a composite audio file wherein said pieces of audiodata expressing said non-musical content are put together with otherpieces of audio data expressing another non-musical content replaceablewith said pieces of music data expressing said musical content; e)labeling said music program with a program identifier; and f)registering said program identifier together with a file identifier in aprogram management table.